Heap / Priority Queue

Keeps track of the smallest or largest element efficiently.

A Min-Heap keeps the smallest element at the top.

Where It's Used

  • Finding the smallest or largest elements efficiently.
  • Keeping track of the top k elements.
  • Scheduling or processing tasks by priority.
  • Repeatedly selecting the next minimum or maximum value.

Problems Using This Pattern

Top K Frequent Elements

Heap / Priority Queue

Kth Largest Element in an Array

Heap / Priority Queue

Merge K Sorted Lists

Heap / Priority Queue

Find Median from Data Stream

Heap / Priority Queue

Task Scheduler

Heap / Priority Queue