기억하기 프로젝트
우선순위큐(Priority Queue) 문제 - 문제11. 이진 힙에서 값 k보다 작은 모든 요소를 찾는 알고리즘을 제시하시오.풀이) 이진 힙의 root부터 시작하여, root의 값이 k보다 작다면 출력한 후 자식노드(left, right)를 각각 k보다 작은지 또 확인한다. 만약 또 k보다 작다면 출력하고, 각각의 노드를 root로 잡아 또 그 자식노드(left, right)로 가고.. 이런식으로 재귀적으로 호출하며, k보다 큰 수를 만나게 되면 재귀호출을 중지하고 return해준다. 직접 소스를 확인해보고 출력 결과를 보자. 소스)public class PriorityQueue { private int[] array; private int limit; PriorityQueue(int[] array, ..
Lake Counting(POJ NO.2386)크기가 N*M인 정원이 있습니다. 그 곳에 비가 내려 물 웅덩이가 생겼습니다. 물 웅덩이는 주위(8군데)가 근접하여 있으면 서로 연결되어 있다고 간주합니다. 즉 하나의 물 웅덩이로 간주합니다. 전부 몇 개의 물 웅덩이가 있을까요? (8군데는 다음의 물 웅덩이 W에 대하여 *부분을 나타냄)*** *W* ***!제약 : N, M
최근에 쓰레드 관련 프로그램을 작성하면서, 부족하다고 느꼈던 부분을 다시 공부해 보자는 마음으로 스레드의 개념을 다시 들춰보았다. Thread보통 스레드를 공부하게 되면 동시에 나오는 개념이 프로세스인 것 같다. 프로세스는 운영체제로부터 자원을 할당받아 실행되는 흐름이라고 본다면, 스레드는 그 프로세스가 할당받은 자원을 이용하는 개념이라고 보면 될 듯 하다.또한, 한 개의 프로세스는 한 가지의 일을 하지만 스레드를 사용하면 한 프로세스 내에서 동시다발적으로 일을 수행할 수 있다. 그렇기 때문에, 빠른 처리가 필요하거나 많은 데이터를 처리해야할 때 스레드를 이용한 프로그램 소스를 흔히 볼 수 있다.먼저, 간단한 예제를 통해 확인해보도록 하자.public class MyThread extends Thread..