二叉树
在计算机科学中,二叉树是每个结点
最多
有两个子树的树结构
下面这个就不是二叉树,B节点
下面右3个子节点
满二叉树与完美二叉树
国内的翻译和国外是有些对不上的\
完美二叉树
英文: Perfect Binary Tree, 有时候在国内就叫
满二叉树
除了叶子结点之外的每一个结点都有两个孩子,每一层(当然包含最后一层)都被完全填充
满二叉树
英文: Full Binary Tree
除了叶子结点之外的每一个结点都有两个孩子结点( 只要你有孩子,你就必然是有两个孩子)
国内早期教材中,满二叉树一般指 perfect binary tree,所以会有满二叉树是完全二叉树的一个特例的说法
完全二叉树
除了最后一层之外的其他每一层都被完全填充,并且所有结点都保持向左对齐
完全二叉树的向左对齐
有点令人困惑, 英文的描述为:
Every level except the last level is completely filled and all the nodes are left justified.
- 第 h 层所有的结点都连续集中在最左边,这就是完全二叉树
- 如果将编号11(K)结点从编号6(E)的左儿子位置移动到编号5(E)的右儿子位置,则变成一棵完全(Complete)二叉树。
结论就是: 向左对齐,就是要全部靠左边且连续,上图就是很好的反例,也可以理解为把perfect binary tree 从右向左挨个去掉.
来源:CSDN
作者:cumt_TTR
链接:https://blog.csdn.net/cumt_TTR/article/details/103951593