二叉树
定义
二叉树:度 <= 2
满二叉树和完全二叉树
满二叉树特点
- 所有叶结点在
最后一层
(全满了) - 只有度为0和2的结点
完全二叉树特点
- 叶子结点只可能出现在
倒数两层
中 - 最大层次中的子叶结点依次排列在最左边的位置上
- 度为1的点最多有一个,而且
只能是拥有左孩子
- 对结点编号后,一旦出现某结点只有左孩子或者度为0,则其后的所有结点都为叶结点
- 结点总数为奇数时没有度为1的结点,为偶数时最后一个结点度为1
结点个数 2i-1,如果没有度为1的结点,则结果一定是个奇数。
二叉树性质
性质1:非空二叉树上的叶子结点树 = 分支结点 + 1 (由树的性质1得到)
n0,n1,n2,分别表示度为0,1,2的结点个数
推导过程:n0+n1+n2-1=n0*0+n1*1+n2*2(分支数 == 结点的边)
n0 = n2 + 1
性质2:第i层上最多有 2i-1 个结点 (由树的性质2得到)
性质3:高度为h的二叉树最多有2h-1个结点 (由树的性质3得到)
性质4:对于完全二叉树编号为i的结点,有以下性质
- 2i <= n,为分支结点否则为叶子结点(可以用下面的性质4.3来解释)
- n为奇数n0=0,n为偶数n0=1
- 左孩子 2i,右孩子 2i+1
- 孩子的父结点 i//2
性质5. 具有n个结点的完全二叉树高度h (由树的性质4得到)
很显然,很多性质都是由树的性质得来的。