title: Why does a Binary Heap has to be a Complete Binary Tree?
body: <p>The heap property says: </p>
  
  <blockquote>
    <p>If A is a parent node of B then the key of node A is ordered with
    respect to the key of node B with the same ordering applying across
    the heap. Either the keys of parent nodes are always greater than or
    equal to those of the children and the highest key is in the root node
    (this kind of heap is called max heap) or the keys of parent nodes are
    less than or equal to those of the children and the lowest key is in
    the root node (min heap).</p>
  </blockquote>
  
  <p>But why in this <a href="http://en.wikipedia.org/wiki/Binary_heap" rel="noreferrer">wiki</a>, the Binary Heap has to be a <strong>Complete</strong> Binary Tree? The Heap Property doesn't imply that in my impression.</p>