본문 바로가기

분류 전체보기

(186)
<꾸준히 해나가는 중입니다> 요즘 업로드를 굉장히 자주 못하고 있다. 현재 나로서 업로드를 하는게 우선일까? 라는 생각이 들기 때문이기도 하고, 시간적 여유가 남아나지 않았다. 나의 군생활이 막바지에 이르고 있다하지만, 국방부는 항상 제역할을 다 해야하기 때문에 바쁠때도 많고 그랬다. 그래도 포기 하지 않았다. 다들 쉬엄쉬엄 하라고 조언한다. 어쩌면 그게 정답일 수도 있지만, 아직은 더 해야할 때가 아닌가 싶다. 휴가를 제외하면 50일도 남지 않은 군생활. 전역하면 난 군인이 아닌, 휴학 중인 학생으로 신분이 바뀐다. 그 말은 즉, 내가 전역하는 순간 나의 좋지 않은 실력을 정당화시키는 일종의 방어기제가 사라진다는 것을 의미하기도 한다. 쉬더라도 나가서 쉬고 싶다. 이 곳에서 무기력하게 누워서 핸드폰만 보는 것은 싫다. 그리고 그렇..
Scanner VS BufferedReader(백준 2161번) 나는 항상 어떠한 값을 입력받을 때 Scanner을 사용해왔었다. BufferedReader와 Scanner의 차이점이 있다는 것을 알고는 있었지만 실제로 그 차이로 문제를 겪었던 적은 없기 때문에 항상 Scanner만을 사용해왔다. 하지만 이번에 2161번을 풀면서 느끼게 되었다. canner는 1KB 크기의 버퍼를 갖기 때문에 입력이 바로 전달되는 반면 BufferedReader는 8KB 크기의 버퍼를 가져 buffer에 입력들을 저장하였다 한 번에 전송하기 때문에 속도가 더 빠르다고 하다. 아래는 내가 2161번을 풀면서 계속 에러가 난 코드와 BufferReader을 사용하여 해결한 코드들이다 또한 값을 출력할 때 arraylist 순회문이 아닌, StringBuilder을 통해 효율성을 극대화 ..
2749번 요즘 들어 백준 문제를 풀고 있는 중이다. DP 문제에 익숙해지기 위해서 새로운 유형의 문제부터 많이 익숙한 문제들을 풀던 도중, 피보나치 수인데 정답률이 상대적으로 낮은 문제를 보고 의아함이 생겨 풀어보게 되었다. 문제 조건 중 가장 눈여겨 보야할 점은 첫째 줄에 n이 주어진다. n은 1,000,000,000,000,000,000보다 작거나 같은 자연수이다. 이 부분 내가 작성한 코드는 다음과 같았다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc =new Scanner(System.in); long num = sc.nextLong(); long fibo[] = new lon..
How to implement DB Schema[5] 형이 내게 준 피드백 내용들을 계속 검토하는 시간들을 가졌다. 기본적인 개념을 담은 ppt를 다운 받아서 보고, 실무에서 적용되는 사례들을 검색해보고 공부하며 보충해야할 점들을 적어서 제출하였고 피드백을 받았다. Marking scheme: Poor/Fair/Good 추가적인 방안 : CDC조사해볼 것 CDN을 기준별로 설정하기 1. 팔로우 관계가 이루어져있거나 함께 아는 친구들의 정보를 담고 있는 user table을 물리적으로 가까운 proxy server 위에 두기. → fair. proxy server는 유저의 접속 지역과 밀접한 곳에 위치해야 적은 레이턴시를 보장할 수 있는데, 이를 만족시키기 위한 세부적인 알고리즘이 어떤 것이 있을지 고려할 것 solution) 대역폭 - 처리할 수 있는 통신..
How to implement DB Schema[4] 보통 2학년 2학기, 3학년즈음에 배우는 컴퓨터 네트워크 개념들에 대해 공부하고 있는 요즘이다. 내가 만든 DB schema를 어떻게 효율적으로 운용할 수 있을지에 대해 self-study를 해보며 rough하게 작성해보라는 과제를 내주었다. network에 대해 지식이 없기에 이 곳에서 허락하는 시간을 쏟아부어서 개념 및 실무적용 기법에 대해 많은 search를 해보았다. 내가 잘 모르는 분야이다 보니 나의 workflow가 올바르게 가고 있는지 체크를 받고자 작성한 draft를 형에게 보냈고 feedback이 왔다. *draft이다 보니 매우 간략하게 기술되어있음. 구체적인 기술적용법이나 적용 알고리즘에 대해서는 차후에 공부하며 작성할 예정* Marking scheme: Poor/Fair/Good C..
How to implement DB Schema[3] [2]에 이어서 글을 작성한다. 나름대로 DB규칙들을 만족할 수 있도록 수정하였고 다음은 그 결과물의 초본이다. User_ID 테이블은 전과 동일하게 작성하였다. 그 뒤, 함께 작업을 준비중인 선배에게 검토를 받았고 합격 사인을 받아낼 수 있었다. 하지만 아직 draft이기에 보완해야할 점이 많다는 생각이 들었고, 조언을 구한 결과 다음과 같은 과제를 내주었다 이제는 DB가 아닌 네트워크 관련 개념들이 나오기 시작했다. 아직 학부 1학년밖에 마치지 않은 지라 네트워크에 대해서는 아는 것이 많이 없다. 내가 할 수 있는 영역인지. 너무 high 난이도의 개념을 먼저 보는 것이 아닌지 걱정이 되었기에 형에게 이걸 해도 되는 단계가 맞는지 물어보았다. 형은 원래 이런식으로 CS의 전반적인 지식을 쌓는 것이 제..
상속(inheritance) 기본특징 - 상속은 부모클래스의 속성을 자식클래스에게 물려주는 것을 말한다 - 상속을 사용하게 되면 코드 재사용성이 높아져 개발시간을 절약해줄 수 있고 효율적인 작업을 할 수 있게 해준다 - private접근 제한을 갖는 필드와 메소드는 상속이 불가능하다 - 부모클래스와 자식클래스가 서로 다른 package에 존재한다면 default 제한을 갖는 것들 또한 상속에서 제외된다 - 자바는 다중상속을 허용하지 않는다 기본공식 public class benz extends Car 생성원리 - 자식객체를 생성하면 부모객체가 먼저 생성되고 자식 개체가 생성된다 - 눈에 보이지는 않지만, 자식생성자가 생성될 때 맨 첫 줄에서 super()로 호출된다 - 부모클래스에 기본생성자가 없고, 매개변수를 받는 생성자가 있다면..
프로그래머스<JadenCase 문자열 만들기> - trim()사용 문제 설명 JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고) 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 s는 길이 1 이상 200 이하인 문자열입니다. s는 알파벳과 숫자, 공백문자(" ")로 이루어져 있습니다. 숫자는 단어의 첫 문자로만 나옵니다. 숫자로만 이루어진 단어는 없습니다. 공백문자가 연속해서 나올 수 있습니다. 입출력 예 s return "3people unFollowed me" "3people Unfollowed Me" "for the last week" "..