스트림 입력: push/pop
값이 올 때마다 O(log N)으로 힙 조건을 복원합니다.
입력 방식이 힙 구축 비용을 결정한다
한 번에 받은 데이터는 아래에서 heapify하고, 계속 들어오는 값은 push로 유지합니다. 상위 K만 필요하면 힙 크기를 K로 제한합니다.
배치 입력: heapify
마지막 부모부터 sift down해 전체 구축을 O(N)에 끝냅니다.
상위 K: 크기 제한 힙
필요 없는 값은 즉시 버려 전체 정렬 비용을 피합니다.