总结 | 二叉树的性质

二叉树的性质1

  • 在二叉树的第i层上至多有2的
    i-1次方个结点(i>=1)
  • 理解:观察如下图:
    第一层(i=1)有1个:2^1-1=1
    第二层(i=2)有2个:2^2-1=2
    第三层(i=3)有4个:2^3-1=4


    image.png

二叉树的性质2

  • 深度为k的二叉树至多有2的k次方-1个结点(k>=1)
  • 理解:如下图所示二叉树的深度为3:
    结点数:(2^3)-1=7


    image.png

二叉树的性质3

  • 对任何一棵二叉树T,如果其终端结点数为n0,度为2的结点数为n2,则n0=n2+1。
  • 理解:终端结点数其实就是叶子结点数,而一棵二叉树,除了叶子结点外,剩下的就是度为1或为2的结点数了,假设n1为度为1的结点数,则树T的结点数n=n0+n1+n2。
    如下图:
    度为0的结点是:4,5,6(3个)
    度为1的结点是:3(1个)
    度为2的结点是:1,2(2个)
    6=3+1+2
    再换一个角度思考:数一数它的连线数,根结点只有分支出去,没有分支进入,所以分支线的总数为结点总数-1,如图:一共有5个分支,6个结点,对于1,2来说,连线数=2*2,对于3来说连线数=1*1
    总连线数=n-1=n2*2+n1
    n=n2*2+n1+1=n0+n1+n2
    =>n0=n2+1


    image.png

二叉树的性质4

  • 具有n个结点的完全二叉树的深度为[log2n]+1([x]表示不大于x的最大整数)

  • 理解:由满二叉树的定义我们可以知道,深度为k的满二叉树的结点数n一定是(2k)-1,因为这是最多的结点个数,那么对于n=(2^k)-1推到得到的满二叉树的深度为k=log2(n+1),比如结点数为15的满二叉树,深度为4

  • 完全二叉树是一棵具有n个结点的二叉树,若按层数编号后其编号与同样深度的满二叉树中编号结点在二叉树中位置完全相同,那他就是完全二叉树,也就是说,它的叶子节点只会出现在最下面两层。它的结点数一定少于等于同样深度的满二叉树的结点数(2k)-1,但一定多于(2k-1)-1,即满足:

    image.png

    由于结点数n是整数,所以:
    image.png

    两边取对数,得到:
    image.png

    而k作为深度也是整数,因此k=[log2n]+1
    image.png

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 二叉树是最常用的数据结构之一,笔者过去一直将关注点放在复杂的树结构(例如红黑树,自平衡树),认为那些才是树的重要应...
    潮汐行者阅读 8,009评论 0 7
  • 树和二叉树 1、树的定义 树(Tree)是由一个 或 多个结点 组成的有限集合T,且满足: ①有且仅有一个称为根的...
    利伊奥克儿阅读 5,238评论 0 1
  • 编程中我们会遇到多少挫折?表放弃,沙漠尽头必是绿洲。 学习二叉树的意义 由于二叉树的知识更倾向于理论,所以我们在实...
    神经骚栋阅读 11,397评论 5 57
  • 一直记得一句歌词:千里难寻是朋友,朋友多了路好走。也一直很羡慕那些广交朋友的人,今天和这一帮人出去喝茶,明天和那一...
    老少女簌簌阅读 1,709评论 0 2
  • 闲适的清晨,花上一个多小时,为家人做一顿精致的早餐,样式繁多,荤素搭配,用心摆盘,餐桌上观之如油画里的静物般赏心悦...
    孙成刚阅读 3,746评论 2 12