二叉树的主要性质总结!

总结自《2018版数据结构高分笔记》

1、非空二叉树上叶子结点数等于双分支结点数加1

这道题在公司招聘的笔试题中经常作为一道填空或者选择题出现,我们可以稍微证明一下这个结论。

证明
假设二叉树中叶子结点数为n0,单分支结点数为n1,双分支结点数为n2,则总结点数为n0+n1+n2。那么在一棵树中,所有结点的分支数等于单分支结点数加上双分支结点数的两倍,即n1+2*n2。另一方面,在一棵二叉树中,除了根结点外,每个结点都有唯一的一个分支指向它,因此二叉树中总的分支数=结点数-1,即n0+n1+n2=n1+2*n2+1,可以得到最初的结论。

变形
这个性质可以运用到很多题目中,比如,题目可能会问二叉树中总的结点数为n,则树中的空指针有多少。如果把空指针想成是叶子结点的话,我们可以认为树中的现有的n个结点都是双分支结点,所以空指针的树木为n+1个。

2、二叉树的第i层上最多有2^(i-1)个结点

结点最多的情况就是满二叉树的情况,此时二叉树每层上的结点数构成了一个首项为1,公比为2的等比数列,通项为2^i-1,i为层号

3、高度或深度为k的二叉树最多有2^(k)-1个结点,换句话说,满二叉树的结点个数为 2^(k)-1。

4、在n个结点的完全二叉树中,对各结点从上到下,从左到右依次编号,则结点之间有如下的关系:

若i为某结点a的编号,则:
如果i!=1,则a的双亲结点编号为floor(i/2)(向下取整的意思);
如果2i<=n,则a的左孩子的编号为2i,反之a无左孩子;
如果2i+1<=n,则a的右孩子的编号为2i+1,反之a无右孩子。

5、函数Catalan(),给定n个结点,能构成Catalan(n)种不同的二叉树:Catalan数的算法为:

6、具有n个结点的完全二叉树的高度为floor(log2n)+1。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值