您的位置:首页 > 其它

二叉树-节点分析

2016-03-23 11:38 155 查看
通过问题了解:

问题一:

某二叉树中度为2的结点有18个,则该二叉树中有

性质1:

二叉树的终端结点(叶子结点)数等于双分支结点数加1. 假设二叉树中终端结点数为n0,单分支结点数为n1,双分支结点数为n2,二叉树中总结点数为n,因为二叉树中所有结点度数均小于或等于2,所以有:n=n0+n1+n2;另一方面,二叉树中所有结点的分支数(即度数)应等于单分支结点数加上两倍的双分支结点数,即n1+2×n2.由树的性质1,有:n=n1+2×n2+1.根据以上两个式子,我们可以得出下面这个等式成立:n0+n1+n2= n1+2×n2+1,所以n0=n2+1.


设度为0,1和2的节点分别为x,y,z,则二叉树总结点数为S=2z+y+1或S=x+y+z,得z+1=x,即度为2的节点数比叶子节点树少1.

性质2:

2的结点数比叶子结点数少1,18+1=19


问题二:

  一颗二叉树共有47个节点,其中有23个度为2的节点。假设根节点在第一层。求改二叉树的深度

【答案】  

  6

【解析1】  

  根据二叉树的性质,度为0的结点个数比度为2的结点多一个。所以本题中度为0的结点的个数为24。在二叉树的第k层上,最多有2k-1(k>=1)个结点。所以第一层上最多1个结点,第二层上最多2个结点,第三层上最多4个结点,第四层上最多8个结点,第5层上最多16个结点。前5层的总共结点个数等于31,而本题度为2的结点个数为23,因此第5层上只能有8个度为2的结点,即在第6层上还有16个度为0的结点。


【解析2】

  n0=n2+1.所以n0=24,n2=23,一共47.即不存在度为1的结点,为完全二叉树。深度为k的完全二叉树结点最多有2的k次方-1个结点,故为(2^k)-1<=47,故得到【解析1】的计算方式;计算反向每层节点数应该是48》24》12》6》3》1完成。故结果为6
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: