Can a heap have no elements? Is it correct to call something with no elements a binary heap? I think it is correct, for one element too, but I'm not sure. It seems to satisfy the definition (from Wikipedia):


  Shape property: a binary heap is a complete binary tree; that is, all levels of the tree, except possibly the last one (deepest) are fully filled, and, if the last level of the tree is not complete, the nodes of that level are filled from left to right.
  
  Heap property: the key stored in each node is either greater than or equal to or less than or equal to the keys in the node's children, according to some total order.
It's up to you to decide. It's a pathological case which is quite similar to the empty graph (on zero vertices) &mdash; sometimes it makes sense to admit it, and sometimes not. It depends on the circumstances. The definition in Wikipedia is irrelevant here &mdash; there are many other similar definitions in the literature, that might disagree on this point.

I recommend the classic article Is the null-graph a pointless concept by Harary and Read.