最近笔试接触到了很多二叉树的公式,但很奇怪的是没有汇总文章,接下来就我自己所见到的题型做个汇总。干货~

Q1.已知完全二叉树总结点数 N,求叶子结点数 n?

如果是偶数个节点,叶子节点等于总节点除以2, 即 N % 2==0, n = N/2
如果是奇数个叶子节点等于(总节点+1)除以2, 即 N % 2 == 1, n = (N+1)/2
即向上取整。
推导可参考:https://blog.csdn.net/stpeace/article/details/40210563

Q2. 已知完全二叉树叶子结点数n, 求总结点数N?

直接计算 : N = 2n

Q3. 已知长度150的队列,对满二叉树进行广度遍历,求二叉树的最大深度?(第一层深度为1)

满二叉树每一层的结点个数为(第一层深度为1)第n层的节点数:2^(n-1),
如果使用150的队列进行广度优先遍历,则每一层的节点数不大于150,
2^(n-1)≤150,2^7=128,2^8=256,n-1最多为7,所以最大深度n=8.

Q4.小根堆 8,15,10,21,34,16,12,删除8后重建堆,最后的叶子节点为?

用到向下调整:
删除8后,将12移动到堆顶,首先15、10比较选取最小的子节点,然后当前节点12和10比较并交换,最后比较16,故比较次数为3次。叶子结点为16。

Q5. 二叉树有着双分支结点数15,单分支结点数30,叶子节点数为?

16
根据二叉树的性质3,叶结点数n0与度为2的结点数n2的关系是:n0=n2+1。

一些性质:

1. 在非空二叉树中,第i层的结点总数不超过 2^(i-1) , i>=1;

2. 深度为h的二叉树最多有  2^h  - 1 个结点(h>=1),最少有 h 个结点;

3. 对于任意一棵二叉树,如果其叶结点数为N0,而度数为2的结点总数为N2,则N0=N2+1;

4. 具有n个结点的完全二叉树的深度为(注:[ ]表示向下取整)

5. 若对一棵有n个节点的完全二叉树进行顺序编号(1≤i≤n),那么,对于编号为i(i≥1)的节点:

当i=1时,该节点为根,它无双亲节点 。

当i>1时,该节点的双亲节点的编号为i/2  。

若2i≤n,则有编号为2的左叶子,否则没有左叶子  。

若2+1≤n,则有编号为2i+1的右叶子,否则没有右叶子   。

6. n个节点的二叉树一共有((2n)!)/(n! * (n+1)!)种
7. 二叉树节点计算公式 N = n0+n1+n2,度为0的叶子节点比度为2的节点数多一个。

N=1*n1+2*n2+1

8. 对任何一棵二叉树T,如果其终端节点数为n0,度为2的节点数为n2,则

n0=n2+1

一些概念:

①结点:包含一个数据元素及若干指向子树分支的信息 。

②结点的度:一个结点拥有子树的数目称为结点的度  。

③叶子结点:也称为终端结点,没有子树的结点或者度为零的结点 。

④分支结点:也称为非终端结点,度不为零的结点称为非终端结点 。

⑤树的度:树中所有结点的度的最大值 。

⑥结点的层次:从根结点开始,假设根结点为第1层,根结点的子节点为第2层,依此类推,如果某一个结点位于第L层,则其子节点位于第L+1层 。

⑦树的深度:也称为树的高度,树中所有结点的层次最大值称为树的深度。

1、满二叉树

高度为h,由2^h-1个节点构成的二叉树称为满二叉树。

2、完全二叉树

完全二叉树是由满二叉树而引出来的,若设二叉树的深度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数(即1~h-1层为一个满二叉树),第 h 层所有的结点都连续集中在最左边,这就是完全二叉树。

堆一般都是用完全二叉树来实现的。

3.二叉树遍历

前序遍历(前根遍历):——>左——>右

中序遍历(中根遍历):左——>——>右

后序遍历(后根遍历):左——>右——>

已知前序和中序,求后序问题,  前序 ABDGCEFH    中序 DGBAECHF

解法:根据前序、中序综合判断画出树的节点图,然后再写后序遍历:DGBEHFCA

(前序和中序的子树也满足前序或中序的规则)

参考:

https://baike.baidu.com/item/%E4%BA%8C%E5%8F%89%E6%A0%91

https://blog.csdn.net/qq_33401691/article/details/78021446

https://blog.csdn.net/stpeace/article/details/40210563

欢迎补充和指正!不定时更新。

完全二叉树总结点叶子结点计算公式题型总结--技术岗笔试(持续更新)相关推荐

  1. c语言叶子结点的计算,计算一棵给定二叉树的所有结点/叶子结点

    [2005 三 6] 两种方案计算二叉树各结点的子孙个数的算法 [测试数据]来源:https://blog.csdn.net/weixin_42034217/article/details/95787 ...

  2. 求二叉树中从根结点到叶子结点的路径

    /** *    实验题目: *        求二叉树中从根结点到叶子结点的路径 *    实验目的: *        掌握二叉树遍历算法的应用,熟练使用先序.中序.后序3种递归 *    和非递 ...

  3. 教你一秒钟得出 N个节点的完全二叉树有多少个叶子节点 / 度为1或2的节点个数

    没耐心的同学们可以直接拉到最底下看结论,有兴趣的话可以浏览全篇文章 完全二叉树的节点计算基本是几类,要么是求完全二叉树中的叶子节点个数或者度为1或者2的节点的个数. 其实这些问题根本上一一类问题,求解 ...

  4. 《Autosar_MCAL高阶配置》总目录_培训教程持续更新中...

    欢迎大家订阅<Autosar_MCAL高阶配置>专栏(可以理解为是Autosar培训教程),献上常用的案例和配置方法.下方整理了相关博文的链接(单击蓝色字体即可跳转),方便大家获取. 本专 ...

  5. 二叉树的进阶操作---(求二叉树中所有结点个数,求叶子结点个数,求第k层结点个数;在二叉树中查找某一结点;层序遍历;判断是否为完全二叉树)

    typedef struct TreeNode {struct TreeNode *left;struct TreeNode *right;char val; }TreeNode;typedef st ...

  6. c语言输出度为1 的节点,计算机国家二级考试中的度为1和度为2是什么意思?老师说:总结点=叶子节点数+度为1+度为2,都是什么意思?...

    度是一个计算机的单位,度为1就说明该节点的个数为1,度为2就说明该节点的个数为2. 而度为0的结点叫叶子结点,由二叉树的性质可以知道在二叉树中叶子结点总是比度为2的结点多一个,故总结点=叶子节点数+度 ...

  7. 一棵二叉树中总共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为多少个?

    二叉树就是说一个结点下面可能有两个子结点(度为2),也可能有一个子结点(度为1),或者没有子结点(度为0,也叫叶子结点) 那么在这棵树中只可能出现三种情况:度为2,度为1,度为0(叶子结点).不可能出 ...

  8. 设一棵完全二叉树共有500个结点,则在该二叉树中有______个叶子结点

    2^9 - 1 = 511 511 - 500 = 11 2 ^ 8 - 1 = 255 511 - 255 = 256 "所以缺少了11个右结点"的"右"字上 ...

  9. 树的度,结点,叶子结点,二叉树

    设树T的度为4,其中度为1.2.3.4的结点个数分别为4.2.1.1.则T中有多少个叶子结点? A.4 B.6 C.8 D.10 一棵含有n个结点的树,有n-1个分支,即 n = 14 + 22 + ...

最新文章

  1. .sql文件如何执行_深入理解SQL原理:SQL查询语句是如何执行的?
  2. jaxp的Sax解析
  3. 2. getline()和get()
  4. html tab与jQuery,js与jquery分别实现tab标签页功能的方法
  5. html.锁屏主题,锁屏HTML主题插件GroovyLock发布
  6. linux下自定义dubbo的shell脚本
  7. 【转】刨根究底字符编码【2.0版】(2):关键术语解释
  8. A good book to learn C#2.0 ----C# 2.0 : Practical Guide for Programmers
  9. windows虚拟声卡直播_【韭菜爱镰刀】高性价比的录音/直播设备推荐
  10. 【IBM Tivoli Identity Manager 学习文档】2 部署准备知识
  11. 计算机组成原理 多级中断,计算机组成原理的大神们能不能帮忙做几道题啊
  12. pb5.0-pb10.0各版本高速下载
  13. access字段属性设置下拉列表_CAD常用命令:ATTDEF(定义属性)
  14. Win10系统安装失败?用这种方法一键就解决了
  15. 雅虎搜索架构_雅虎! 想要推动您的网站搜索
  16. 计算机设计媒体专业排名,2020USNEWS媒体与数字媒体专业综合排名
  17. HTML5 2D平台游戏开发#8指令技
  18. 未来计算机行业哪个吃香,男孩子未来最吃香的十大行业
  19. Maven server structure problem
  20. 苹果提示:“未信任的企业开发者”

热门文章

  1. ipmitool命令
  2. NYOJ409 郁闷的c小加三
  3. 数字化需要授之以渔,Azure 动手实验营在等你
  4. mysql tinytext 最大长度_TINYTEXT,TEXT,MEDIUMTEXT 和 LONGTEXT 的最大存储大小
  5. Unity技巧总结03 转美术数字动态设置
  6. mysql 的命名管道_笔记27-徐 SQLSERVER命名管道工作原理
  7. 20 张图揭开「内存管理」的迷雾,瞬间豁然开朗
  8. BZOJ 2085 Poi2010 Hamsters Hash+倍增Floyd
  9. 【LeetCode击败99%+】二叉树的最大深度
  10. 东南大学计算机学院2020复试名单,东南大学公布2020考研数据,录取7745人,硕士6170人...