当前位置: 首页 > news >正文

数据结构(五)——树的基本概念

五、树

5.1 树的基本概念

5.1.1 树的定义

树是n(n>=0)个结点的有限集合结点数为0的树称为空树

非空树的特性

  • 有且仅有一个根节点
  • 没有后继的结点称为“叶子结点”(或终端结点)
  • 有后继的结点称为“分支结点”(或非终端结点)
  • 除了根节点外,任何一个结点都有且仅有一个前驱
  • 每个结点可以有0个或多个后继。

5.1.2 树的基本术语

树的属性

  • 结点的层次(深度)——从上往下数 (默认从1开始)
  • 结点的高度——从下往上数
  • 树的高度(深度)——总共多少层
  • 结点的度——有几个孩子(分支)★
  • 树的度——各结点的度的最大值   ★

有序树——逻辑上看,树中结点的各子树从左至右是有次序的,不能互换
无序树——逻辑上看,树中结点的各子树从左至右是无次序的,可以互换

森林。森林是m(m≥0)棵互不相交的树的集合。m为0时是“空森林”

5.1.3 树的常考性质 

常见考点1:结点数=总度数+1
结点的度—结点有几个孩子(分支)

常见考点2:度为m的树、m叉树 的区别

        树的度——各结点的度的最大值                      m叉树——每个结点最多只能有m个孩子的树

度为m的树m叉树
任意结点的度 ≤ m(最多m个孩子)任意结点的度 ≤ m(最多m个孩子)
至少有一个结点度 = m(有m个孩子)允许所有结点的度都 < m
一定是非空树,至少有m+1个结点可以是空树

常见考点3:度为m的树第 i 层至多有 m^{i-1} 个结点(i≥1)
                    m叉树第 i 层至多有 m^{i-1}  个结点(i≥1) 

常见考点4:高度为h的m叉树至多有 \frac{m^h-1 }{m-1}个结点。
等比数列求和公式:a+aq+aq^{2}+...+aq^{n-1}=\frac{a(1-q^{n}) }{1-q}

常见考点5:高度为h的m叉树至少有 h 个结点。
                    高度为h、度为m的树至少有 h+m-1 个结点

常见考点6:具有n个结点的m叉树的最小高度为[log_{m}(n(m - 1) + 1)]
高度最小的情况——所有结点都有m个孩子

http://www.lryc.cn/news/321400.html

相关文章:

  • 2.28CACHE,虚拟存储器
  • 深入理解栈和队列(一):栈
  • electron-builder 打包问题,下载慢解决方案
  • (简单成功)Mac:命令设置别名
  • Grok-1:参数量最大的开源大语言模型
  • Python 自然语言处理库之stanza使用详解
  • 计算机网络:数据交换方式
  • 万用表革新升级,WT588F02BP-14S语音芯片助力智能测量新体验v
  • Day61:WEB攻防-PHP反序列化原生类TIPSCVE绕过漏洞属性类型特征
  • 【开源】SpringBoot框架开发不良邮件过滤系统
  • 详细教---用Django封装写好的模型
  • 设计模式 抽象工厂
  • OPTIONS请求(跨域预检查)
  • 游戏反云手机检测方案
  • HarmonyOS NEXT应用开发之动态路由
  • wayland(xdg_wm_base) + egl + opengles 使用 Assimp 加载带光照信息的材质文件Mtl 实现光照贴图的最简实例(十七)
  • 【NLP笔记】Transformer
  • 【Unity】程序创建Mesh(二)MeshRenderer、光照、Probes探针、UV信息、法线信息
  • 每日一练:LeeCode-167. 两数之和 II - 输入有序数组【双指针】
  • 性能优化(CPU优化技术)-NEON指令详解
  • 服务器硬件基础知识和云服务器的选购技巧
  • 深度学习PyTorch 之 transformer-中文多分类
  • STC 51单片机烧录程序遇到一直检测单片机的问题
  • 后端系统开发之——接口参数校验
  • IDEA 配置阿里规范检测
  • 数据仓库系列总结
  • gitlab runner没有内网的访问权限应该怎么解决
  • el-tree 设置默认展开指定层级
  • python便民超市管理系统flask-django-nodejs-php
  • HarmonyOS — BusinessError 不能被 JSON.stringify转换