什么是完全二叉树?他的对应节点有什么规律?能举例说明一下吗
仰望星空 脚踏实地 资深达人 2016-02-01 11:34:36
2305 4 0
问题来自: 二叉树的计算
一棵完全二叉树共有360个结点,则在该二叉树中度为1的结点个数为( )
A. 0
B. 1
C. 180
D. 181
答案:B
解析:总结点数=叶子结点数+度为1的结点数+度为2的结点数。叶子结点数=度为2的结点数+1=[总结点数/2](完全二叉树度为1的结点不是0就是1),[]表示向上取整。根据以上公式得出叶子结点为180,度为2的结点数为179,则度为1的结点数为1。所以选择B。

共 4 个回答

    青栀如初 资深大师 3435天前

    亲爱哒

      不好意思,刚刚才看到题

     我们说:完全二叉树是指:若设二叉树的深度为h,除第 h 层外,其它各层 (1h-1) 的结点数都达到最大个数,第 h 层所有的结点都连续集中在最左边,这就是完全二叉树。

      完全二叉树是由满二叉树而引出来的。对于深度为K的,有N个结点的二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号从1n的结点一一对应时称之为完全二叉树。

      若一棵二叉树至多只有最下面的两层上的结点的度数可以小于2,并且最下层上的结点都集中在该层最左边的若干位置上,则此二叉树成为完全二叉树。

      亲爱哒我们接着来看这道题:

       我们说:

    根据二叉树的性质n0 = n2 + 1以及完全二叉树中度为1的结点个数最多为1

    可以推出如下结论如果完全二叉树中结点个数n是偶数:

       度为0的结点个数n0 = n / 2

       度为1的结点个数n1 = 1

       度为2结点个数为n / 2 - 1

          如果完全二叉树中结点个数n是奇数:

       度为0的结点个数n0 = (n + 1)/ 2

       度为1的结点个数n1 = 1

       度为2结点个数为(n - 1) / 2

    那么我们再来看这道题:

      完全二叉树中度为0的结点要么1个,要么0个,由于总结点数为偶数个,所以度为1的结点只有1个;度为2的结点为k,则度为0的结点为k+1,360-k-k-1一定是奇数

      所以由于总节点数是360是偶数,而且度为1的节点只有1个,所以应该选择B选项就对了。

      亲爱哒,望采纳哟,如果以后还有什么不懂哒地方我们还可以一起讨论哟,么么哒亲爱哒!


    仰望星空 脚踏实地 资深达人 3435天前

    回复 青栀如初:亲,你能画图说明一下完全二叉树吗?还是不太理解

    青栀如初 资深大师 3435天前

    回复 仰望星空 脚踏实地:判断二叉树是否为完全二叉树。完全二叉树的定义是,前n-1层都是满的,第n层如有空缺,则是缺在右边,即第n层的最右边的节点,它的左边是满的,右边是空的。

     

    以3层二叉树为例,以下情况为完全二叉树:

     

     亲爱哒,“望采纳哟”,么么哒!

    青栀如初 资深大师 3434天前

    回复 仰望星空 脚踏实地:亲爱哒,望采纳哟,如果以后还有什么不懂哒问题我们还可以一起讨论哟,相信我们一定可以把问题解决哒,么么哒亲爱哒!

您还没有登录,所以不能回复该问题
我要回复

  • 0

    点赞

  • 扫一扫分享朋友圈

    二维码

  • 分享

相关问题