본문 바로가기

분류 전체보기154

제비 뽑기-알고리즘 해결. 알고리즘-이진탐색 제비 뽑기 어느 날 친구가 봉지를 들고 와 당신에게 게임을 제안했습니다. 봉지에는 숫자가 쓰여 있는 n장의 종이가 들어 있습니다. 당신은 봉지에서 종이를 한 장 뽑고, 숫자를 확인한 후 다시 봉지에 넣는 동작을 4번 반복하여, 그 숫자의 합이 m이면 당신의 승리, 그렇지 않으면 친구가 승리하게 됩니다. 당신은 이 게임을 몇 번이나 해 보았지만 한번도 이기지 못했습니다. 화가 난 당신은 봉지를 찢어 보든 종이를 꺼낸 후 정말 이길 수 없었는지를 조사했습니다. 종이에 쓰여 있는 숫자가 k1, k2, … , kn 일 경우 합이 m 이 되는 경우가 있는 지를 조사하고, 방법이 있다면 Yes, 없다면 No 를 출력하는 프로그래밍을 장성하세요. 요약n개의 숫자가 적힌 종이가 주머니에 들어 있고, .. 2016. 10. 6.
알고리즘 책 “프로그래밍 콘테스트 챌린징” 책에 있는 예제를 기반으로 하여 알고리즘에 대해 정리를 하려고 한다.책에 있는 예제가 c++ 코드로 되어 있는 부분을 java 언어로 변경하여 포스팅 할 것이다. 포스팅 주기는 아마 들쑥날쑥 하겠지만… 계속해서 해 보려한다. -------------2016.10.11 - 추가좋은 책인 것은 확실하나 오타와 그림이 잘못된 경우가 있다.간혹 중요한 부분에서 오타와 잘못된 그림이 이해를 힘들게 한다.이 곳에 공부한 것을 정리해서 올릴 때는 그림을 수정하고 오타를 수정해서 올리고 있으므로 이 블로그에서 보시는 분은 믿고 보셔도 됩니다. 2016. 10. 6.
갈매기S 나는 슬로우 스타터(slow starter)이다. 항상 남들보다 한두 발자국 더디게 출발해 왔다. 대학교도 늦게 가고, 취업도 29살이라는 나이에 했다.Design pattern 의 존재 자체를 34살 쯤에 알았다. 자바는 32살에 시작했다. javascript는 33살에… 나는 슬로우 스타터이면서 스테디 러너(steady runner)이다.Design pattern 책을 보면서 객체 지향적인 설계를 어떻게 할 수 있는지에 대해서 알았고, 로버트 C. 마틴의 ‘클린 코드’ 좋은 코드 작성법을 배웠다. 남들보다 늦게 알았지만 부족한 만큼 꾸준히 공부한다. 단거리 선수가 아닌 마라톤 선수 처럼 위해 무리하지 않고 조금씩 조금씩 계속해서 공부를 이어갈 것이다. 2016. 10. 6.
G1 가비지 콜렉터 이전과 다른 점 & 동작 방식 우선 이전 가비지 콜렉션에 대해서는 잘 정리가 되어 있는 네이버 D2(http://d2.naver.com/helloworld/1329) 문서를 참조 바랍니다. 읽고 오셨다는 가정하에 G1의 특징에 대해서만 정리하였습니다. G1 garbage collector G1은 Oracle JDK 7 update 4 와 그 이후 버전부터 완벽한 지원을 합니다. G1의 목표 : CMS처럼 동시에 진행.GC 때문에 긴 stop-the-world 가 발생하지 않고 Compact한 여유 공간예상 가능한 stop-the-world 주기성능 저하를 줄일 것자바 heap 보다 더 큰 메모리를 사용하지 않을 것 G1의 특징: 이전 가비지 콜렉터들(serial, paralle, CMS)은 모두 고정된 메모리의 young, old, .. 2016. 9. 30.