[java] 자바 힙에서 최소/최대값 삭제 예시

이 포스트에서는 자바에서 자료구조에서 최소값 또는 최대값을 삭제하는 방법에 대해 살펴보겠습니다.

최소값 삭제 예시

아래는 자바에서 최소 힙에서 최소값을 삭제하는 예시 코드입니다.

import java.util.PriorityQueue;

public class MinHeapExample {
    public static void main(String[] args) {
        PriorityQueue<Integer> minHeap = new PriorityQueue<>();
        // 값을 추가
        minHeap.add(3);
        minHeap.add(1);
        minHeap.add(5);
        // 최소값 삭제
        int min = minHeap.poll();
        System.out.println("최소값: " + min);
    }
}

최대값 삭제 예시

아래는 자바에서 최대 힙에서 최대값을 삭제하는 예시 코드입니다.

import java.util.Collections;
import java.util.PriorityQueue;

public class MaxHeapExample {
    public static void main(String[] args) {
        PriorityQueue<Integer> maxHeap = new PriorityQueue<>(Collections.reverseOrder());
        // 값을 추가
        maxHeap.add(3);
        maxHeap.add(1);
        maxHeap.add(5);
        // 최대값 삭제
        int max = maxHeap.poll();
        System.out.println("최대값: " + max);
    }
}

위의 코드에서 PriorityQueue자바에서 기본으로 제공되는 우선순위 큐 자료구조를 나타내며, Collections.reverseOrder()를 사용하여 최대 힙으로 동작하도록 설정했습니다.

에서의 값 삭제는 poll() 메서드를 사용하여 가장 작은 값 또는 가장 큰 값을 삭제할 수 있습니다.

참고 자료: