[java] 자바 힙의 최대값 찾기

자바에서 PriorityQueue 클래스를 사용하여 최대 힙(heap)에서 최대값을 찾는 방법을 알아보겠습니다.

PriorityQueue를 사용하여 최대 힙(heap) 생성하기

PriorityQueue를 사용하여 최대 힙을 만들기 위해서는 Comparator를 이용하여 우선순위를 정의해야 합니다. 다음은 최대값이 높은 순서대로 정렬하는 Comparator 클래스의 예시입니다.

import java.util.*;

class MaxHeapComparator implements Comparator<Integer> {
    public int compare(Integer a, Integer b) {
        return b - a;
    }
}

PriorityQueue<Integer> maxHeap = new PriorityQueue<>(new MaxHeapComparator());

최대값 찾기

maxHeap.peek() 메소드를 사용하여 최대값을 찾을 수 있습니다.

int max = maxHeap.peek();
System.out.println("최대값: " + max);

이제 PriorityQueue를 사용하여 자바에서 최대값을 갖는 힙(heap)을 구현하는 방법을 배웠습니다. 위에서 제시한 방법을 적용하여 프로그램을 작성해보시기 바랍니다.

참고 자료