1.二叉树的第i层上最多有2i-1个结点(i≥1)。
证明:当i=1时,第1层只有一个根结点,而
2i-1=20 =1,结论显然成立。
假定i=k(1≤k<i)时结论成立,即第k层上至多有2k-1个结点,
则 i=k+1时,因为第k+1层上的结点是第k层上结点的孩子,而二叉树中每个结点最多有2个孩子,故在第k+1层上最大结点个数为第k层上的最大结点个数的二倍,即2×2k-1=2k。结论成立。
2.一棵深度为k的二叉树中,最多有2k-1个结点,最少有k个结点。
证明:由性质1可知,深度为k的二叉树中结点个数最多
= 2k-1;
每一层至少要有一个结点,因此深度为k的二叉树,
至少有k个结点。
深度为k且具有2k-1个结点的二叉树一定是满二叉树,
深度为k且具有k个结点的二叉树不一定是斜树。
3.在一棵二叉树中,如果叶子结点数为n0,度为2的结点数为n2,则有: n0=n2+1。
证明: 设n为二叉树的结点总数,n1为二叉树中度为1的结点数,则有:
n=n0+n1+n2
在二叉树中,除了根结点外,其余结点都有唯一的一个分枝进入,由于这些分枝是由度为1和度为2的结点射出的,一个度为1的结点射出一个分枝,一个度为2的结点射出两个分枝,所以有:
n=n1+2n2+1
因此可以得到:n0=n2+1 。
小问题:在有n个结点的满二叉树中,有多少个叶子结点?
因为在满二叉树中没有度为1的结点,只有度为0的叶子结点和度为2的分支结点,所以,
n= n0 + n2
n0=n2 + 1
即叶子结点n0=(n + 1)/2
4.具有n个结点的完全二叉树的深度为 log2n +1。
具有n个结点的完全二叉树的深度为 log2n +1。
5.对一棵具有n个结点的完全二叉树中从1开始按层序编号,则对于任意的序号为i(1≤i≤n)的结点(简称为结点i),有:
(1)如果i>1,
则结点i的双亲结点的序号为 i/2;如果i=1,
则结点i是根结点,无双亲结点。
(2)如果2i≤n,
则结点i的左孩子的序号为2i;
如果2i>n,则结点i无左孩子。
(3)如果2i+1≤n,
则结点i的右孩子的序号为2i+1;如果2i+1>n,则结点 i无右孩子。
对一棵具有n个结点的完全二叉树中从1开始按层序编号,则
结点i的双亲结点为 i/2;
结点i的左孩子为2i;
结点i的右孩子为2i+1。