* complete binary tree
– Definition: A binary tree in which every level, except possibly the deepest, is
completely filled. At depth n, the height of the tree, all nodes must be as
far left as possible.
* full binary tree
– Definition: A binary tree in which each node has exactly zero or two children.
ex> huffman tree
* perfect binary tree
– Definition: A binary tree with all leaf nodes at the same depth. All internal
nodes have degree 2.