【数据结构】树与二叉树

本文深入探讨了树和二叉树的性质,包括度为2的有序树与二叉树的区别,满二叉树、完全二叉树、二叉排序树、平衡二叉树的概念。还介绍了树的存储结构、遍历方法以及线索二叉树,同时阐述了树与二叉树在实际应用中的场景,如二叉排序树的查找效率和哈弗曼树的构建。此外,文章提到了历年考试中关于这些概念的相关题目。
摘要由CSDN通过智能技术生成

树的性质

  • 注意区分有序树和无序树
  • 树中的结点数等于所有结点的度数加1。
  • 度为m的树中第i层上至多有mi-1个结点(i >= 1)。
  • 高度为h的m叉树至多有(mh - 1) / (m - 1)个结点。
  • 具有n个结点的m叉树的最小高度为ceil(logm(n(m-1) + 1))。
  • 树的路径长度是所有路径长度的总和,树根到每个结点的路径的最大值应是树的高度减1。
  • 分支数等于树中各结点的度之和。
  • 总结点数 = n0 + n1 + n2 + … + nm (即度分别为n0…nm的结点个数的总和)
  • 总分支数 = 1n1 + 2n1 +…mnm
  • 总结点数 = 总分支数 + 1

二叉树的概念

非空二叉树上的叶子结点数等于度为2的结点数加1,即n0 = n2 + 1

二叉树与度为2的有序树的区别:

  • 度为2的树至少有3个结点,而二叉树可以为空
  • 二叉树的子树有左右之分,颠倒了是另外一棵二叉树,而度为2的树是无序树。

满二叉树

一棵高度为h,且含有2h - 1个结点的二叉树称为满二叉树。除叶子结点外每个结点度数为2.

完全二叉树

性质:

  1. 若i <= floor(n / 2),则结点i为分支结点,否则为叶子结点叶子结点数等于分支结点数或者分支结点数加1
  2. 叶子结点只可能在层次最大的两层上出现。
  3. 若有度为1的结点,则只可能有一个。
  4. 按层次编号后,一旦出现某结点(编号为i)为叶子结点或只有左孩子,则编号大于i的结点均为叶子结点。
  5. 此条性质可以按照满二叉树以及满二叉树去掉最后一个结点这两个特殊情况来理解:
    • 若n为奇数,则每个分支结点都有左子女和右子女。
    • 若n为偶数,则编号最大的分支结点(编号为n/2)只有左子女,没有右子女,其余分支结点左、右子女都有。

二叉排序树

平衡二叉树

树上任一结点的左子树和右子树的深度之差不超过1。

二叉树的性质

除了包含树的性质外,还有:

  • 非空二叉树上的叶子结点数等于度为2的结点树加1。

二叉

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值