JAVA
[JAVA] 우선순위큐 PriorityQueue 사용하기
nang.
2020. 12. 29. 21:29
반응형
SMALL
우선순위큐 (Priority Queue)
우선순위가 높은 엘리먼트가 먼저 나가는 자료구조
- heap을 이용하여 구현!
- 이진트리 구조
- O(nlogn)
1. 최소힙 (MinHeap)
제일 낮은 숫자가 root
1.1 Priority Queue 선언
PriorityQueue<Integer> intMinHeap = new PriorityQueue<>();
PriorityQueue<String> stringMinHeap = new PriorityQueue<>();
1.2 값 추가하기
intMinHeap.add(1);
intMinHeap.offer(2);
- 반환 타입에 따른 차이
add() 와 offer() 의 차이
1.3 값 삭제
intMinHeap.poll();
intMinHeap.remove();
1.4 root 값 확인
intMinHeap.peek();
2. 최대힙 (Max Heap)
제일 큰 숫자가 root
2.1 Priority Queue 선언
PriorityQueue<Integer> maxHeap = new PriorityQueue<>(Collections.reverseOrder());
Collections.reverseOrder()
이용
반응형
LIST