Priority Queue
lA priority queue is a data repository that has two methods:
linsert
lremoveMax (or removeMin, depending on the version)
lA heap is a natural implementation of a priority queue:
lBoth insertions and deletions are O(log n)