import java.util.PriorityQueue;
우선순위 큐(priority queue)를 구현한 클래스이며, java.util
패키지에 포함되어 있다. 일반적인 큐(Queue)가 선입선출(FIFO) 구조인 것과 달리, PriorityQueue
는 우선순위가 높은 요소를 먼저 꺼내는 구조이다
항목 | 설명 |
---|---|
자료구조 | 최소 힙(Min Heap)을 기반으로 구현됨 |
기본 정렬 | 오름차순 (작은 값이 먼저) |
사용 용도 | 가장 작은/큰 값을 빠르게 꺼내야 할 때 사용 |
인터페이스 | Queue , Collection 인터페이스 구현 |
사용 방법
PriorityQueue<Integer> pq = new PriorityQueue<>();
pq.offer(5); // 요소 추가
pq.offer(1);
pq.offer(3);
pq.poll(); // 가장 작은 값을 꺼내고 제거
pq.peek(); // 가장 작은 요소를 return 하지만 제거하지는 않음