二叉树的5个重要性质「建议收藏」

二叉树的5个重要性质「建议收藏」1.在二叉树的第i层上最多有2 i-1 个节点。(i>=1) 用归纳法证明:归纳基:i=1层时,只有一个根结点,          2i-1=20=1;归纳假设:假设i=k时,命题成立;归纳证明:二叉树上每个结点至多有两棵子树,则第k+1层的结点数最多为2k-12=2k+1-1。

大家好,又见面了,我是你们的朋友全栈君。

1.在二叉树的第i层上最多有2 i-1 个节点 。(i>=1)

 用归纳法证明:

归纳基:i = 1 层时,只有一个根结点,
                    2i-1 = 20 = 1;

归纳假设:假设i=k时,命题成立;

归纳证明:二叉树上每个结点至多有两棵子树,则
第 k+1 层的结点数 最多为2k-1 x 2 = 2k+1-1 。

2.二叉树中如果深度为k,那么最多有2k-1个节点。(k>=1)

 证明:

基于性质1,深度为 k 的二叉树上的结点数至多为
       2^0+2^1+ …..+2^k -1 = 2^k -1 

3.n0=n2+1  n0表示度数为0的节点 n2表示度数为2的节点

    推导过程 根据两个公式

    1. n=n0+n1+n   n表示二叉树中的节点总个数,n1表示度数为1的节点个数

    2.n-1=2n2+n1      通过观察二叉树我们可知,除了根节点之外,其余的任何节点都有一个入口分支,其他节点都有一个入口分支,那么节点的总分支数等于节点个数减一,度数为2的节点有2个出口分支,度数为一的有1个出口分支,度数为0的节点没有出口分支 所以总的分支个数为 2n2+n1

 

4.在完全二叉树中,具有n个节点的完全二叉树的深度为[log2n]+1,其中[log2n]+1是向下取整。

二叉树的5个重要性质「建议收藏」

     推导过程根据性质 2: 假设深度为k 的满二叉树的节点个数一定为2k-1,那么n=2k-1推得满二叉树的度数为k=log2(n+1);

 完全二叉树是具有n个节点的二叉树,若按层序编号那么其编号与同样深度的满二叉树的节点编号在二叉树的位置相同,那么他就是完全二叉树,也就是说他的叶子几点只可能出现在最下边的两层,他的深度等于满二叉的深度,但他的节点一定少于等于满二叉树的节点个数,但一定多与2k-1-1,2k-1-1第度数为k-1层的满二叉树的节点个数,那么n就满足2k-1-1<n<=2k-1,由于n为整数那么n<=2k-1可以推出n<=2,n>2k-1-1可以推出 n>=2k-1,所以2k-1<n<=2k  ,即可得k-1<=log2n<k 而k作为整数因此k=[log2n]+1

设 完全二叉树的深度为 k 

则根据第二条性质得 2k-1 -1<n ≤ 2k -1,即2k-1≤  n < 2k      即   k-1 ≤  log2 n < k 

因为 k 只能是整数,因此, k =[log2n] + 1

5.若对含 n 个结点的完全二叉树从上到下且从左至右进行 1 至 n 的编号,则对完全二叉树中任意一个编号为 i 的结点:

(1) 若 i=1,则该结点是二叉树的根,无双亲, 否则,编号为 [i/2] 的结点为其双亲结点;  

(2) 若 2i>n,则该结点无左孩子,  否则,编号为 2i 的结点为其左孩子结点;

(3) 若 2i+1>n,则该结点无右孩子结点,  否则,编号为2i+1 的结点为其右孩子结点。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138451.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C++控制台制作ATM机[通俗易懂]

    C++控制台制作ATM机[通俗易懂]文章目录题目代码实现所需要头文件Card类Bankcard类ATM类ATM类函数的声明主函数题目在控制台编程中共设置了三个类,ATM类、Card类和Bankcard类,设计函数实现登录、查询、修改密码、取款、存款、转账以及退出系统等功能。程序分别从MFC控件和c++控制台实现。同时在要求的基础之上,进行了部分仿ATM的优化,例如在登陆界面输入错误三次就会冻结账号退出系统,在MFC对话框中加入图…

    2022年8月18日
    7
  • 【vue引用原生高德地图并多点标注】

    【vue引用原生高德地图并多点标注】vue.js引用原生高德地图不是amap

    2022年5月11日
    43
  • 2021山东安全员c证考试题库_C类安全员

    2021山东安全员c证考试题库_C类安全员题库来源:安全生产模拟考试一点通公众号小程序2022山东省安全员C证培训试题为山东省安全员C证判断题的新全考试题型!2022年山东省安全员C证考题及答案根据山东省安全员C证考试教材。山东省安全员C证复审模拟考试随时根据安全生产模拟考试一点通上手机同步练习。1、【多选题】一般模板工程通常由()等组成。(ABD)A、面板B、支架C、加固件D、连接件E、螺栓2、【多选题】下列沥青洒布车阀门及油路符合要求的是()。(ABCDE)A、各操作部分应灵活有效,各阀的…

    2025年9月24日
    5
  • 交换机的背板带宽计算方式

    交换机的背板带宽计算方式交换机的背板带宽 是交换机接口处理器或接口卡和数据总线间所能吞吐的最大数据量 背板带宽标志了交换机总的数据交换能力 单位为 Gbps 也叫交换带宽 一般的交换机的背板带宽从几 Gbps 到上百 Gbps 不等 一台交换机的背板带宽越高 所能处理数据的能力就越强 但同时设计成本也会越高 一般来讲 计算方法如下 1 线速的背板带宽考察交换机上所有端口能提供的总带宽 计

    2025年7月9日
    2
  • 大数据开发的工具有哪些?

      作为一个大数据开发人员,每天要与使用大量的大数据工具来完成日常的工作,那么目前主流的大数据开发工具有哪些呢?下面为大家介绍下主流的大数据开发工具。1.HadoopHadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop是一个能够对大量数据进行分布…

    2022年4月8日
    78
  • EPPLUS 分组

    EPPLUS 分组使用EPPLUS,导出的EXCEL文件中分组publicvoidRow_Col_Grouping_Test(){//http://stackoverflow.com/questions/32760210/how-to-group-rows-columns-in-epplus//Throwinsomedatavardatatable=newDa

    2022年6月23日
    30

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号