개발/자바
[java] 자바 우선순위 큐 PriorityQueue (힙 Heap)
Walon_
2021. 11. 16. 16:21
PriorityQueue (우선순위 큐)
- 완전이진트리 방식 (heap)
- 최댓값 혹은 최솟값을 자주 구할때 사용한다.
PriorityQueue<Integer> minHeap = new PriorityQueue<>(); //최소힙
PriorityQueue<Integer> maxHeap = new PriorityQueue<>(Collections.reverseOrder()); //최대힙
heap.add(3);
heap.add(1);
heap.add(2);
heap.peek();
heap.poll(); // return 1
//comparable을 상속한 클래스로도 사용이 가능하다.
class Member implements Comparable<Member>{
@Override
public int compareTo(Member member) {
return this.age - member.age;
}
}
PriorityQueue<Member> minHeap = new PriorityQueue<>();
PriorityQueue<Member> maxHeap = new PriorityQueue<>(Collections.reverseOrder());