A binary heap is a heap-ordered binary tree
which has a very special shape called a *complete tree*.
As a result of its special shape,
a binary heap can be implemented using an array as the
underlying foundational data structure.
Thus, the implementation is based on array subscript calculations
rather than pointer manipulations.
And since an array is used,
the storage overhead associated with the pointers contained in the nodes
of the trees is eliminated.

Copyright © 1997 by Bruno R. Preiss, P.Eng. All rights reserved.