What is a Heap?
A brief introduction to heaps and their uses. We will also discuss the heap property and how a heap is implemented.
Introduction
Heaps are advanced data structures that are useful in applications where you want to sort and implement priority queues. They are regular binary trees with two special properties.
Heaps must be Complete Binary Trees
A Complete Binary tree is a tree where each node has at most two children and the nodes at all levels are full, except for the leaf nodes which can be empty.
Some Complete Binary Tree Properties:
- All leaves are either at depth or depth .
- The leaves at depth are to the left of the leaves at depth
- There is at most one node with just one child
- If the singular child exists, it is the left child of its parent
- If the singular child exists, it is the rightmost leaf at depth .
Level up your interview prep. Join Educative to access 80+ hands-on prep courses.