A Binary Heap is like a priority queue in a bustling airport, where the most important passengers (highest or lowest priority) are always at the front. It is a complete binary tree where each parent node is either greater than or less than its child nodes, depending on whether it is a max-heap (highest value at the top) or a min-heap (lowest value at the top). This arrangement makes it easy to quickly access and remove the highest or lowest priority element.
function heapify(node):
parent = node.parent
if parent and node.value > parent.value:
swap(node, parent)
heapify(parent)
© 2025 See Algorithms. Code licensed under MIT, content under CC BY-NC 4.0.