# Heap (data-structure)

In computer science, a heap is a specialized tree-based 
data structure that satisfies the heap property: if `P`
is a parent node of `C`, then the key (the value) of `P` 
is either greater than or equal to (in a max heap) or 
less than or equal to (in a min heap) the key of `C`. 
The node at the "top" of the heap (with no parents) is 
called the root node.

![Heap](https://upload.wikimedia.org/wikipedia/commons/3/38/Max-Heap.svg)

## References

- [Wikipedia](https://en.wikipedia.org/wiki/Heap_(data_structure))
- [YouTube](https://www.youtube.com/watch?v=t0Cq6tVNRBA&index=5&t=0s&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8)
