全部数据结构、算法及应用课内模板请点击:https://blog.csdn.net/weixin_44077863/article/details/101691360

一、树与森林的概念及定义

1、树的特点:树中结点(除根结点)均有一个直接前驱和多个直接后继,树是一个树形(非线性)结构。

2、树上结点的度:树上结点的度为其出度,即儿子个数

3、父结点、儿子结点、兄弟结点、祖先结点、子孙结点、叶子结点(又叫终端结点、外部结点,度为0)、

分支结点(又叫非叶子结点、内部节点,度不为0)

4、树的度:结点的度中的最大值

5、高度和深度:科学出版社张宪超的数据结构规定 深度从0开始,高度从1开始,这个没啥成文规定,笔试看题里会给具体规定

6、结点的深度(结点的层数):从上到下依次增加

7、结点的高度:科学出版社张宪超的数据结构没有提出这一概念,因为对这一概念的定义说法有二

①该结点到最低的结点的高度

②该结点作为根结点的子树的高度

8、树的高度:从下到上依次增加

9、有序树:每个结点的所有子树间存在确定的次序关系(即儿子有顺序)

10、无序树:每个结点的所有子树间不存在确定的次序关系(即儿子无顺序)

11、二叉树:树的度为2的有序树(注意有序树,l 和 r 不可颠倒)

12、森林:m>=0棵树构成森林

13、理解与拓展:树本质上是一个有向图,指向关系由选取的根结点决定。平时我们只是把树上指向的箭头省略掉了。

对一个n个结点的无向图,有n种方式构建一棵无序树

二、树的表示方法(了解一下)

1、树形表示法(常用)

2、文氏图表示法

3、凹入表示法

4、嵌套括号表示法

三、树的性质

1、树的结点树 = 所有结点的度之和 + 1(所有的结点度之和等于根结点的子孙数)

2、度为 m 的树,第 i 层上至多有  个结点(i>=0)

3、高度为 h,度为 m 的树至多有 个结点(等比数列求解)

4、n 个结点,度为 m 的树,最小高度为向上取整

四、几种特殊的二叉树

1、完全二叉树:除最后一层外上面的其他层全满,且最后一层的结点位于最左侧连续的位置上

                  特点:叶子结点一定在最后一层或倒数第二层

2、满二叉树:每一层都是满的,满二叉树是最特殊的完全二叉树

              特点:只有度为 0 或度为 2 的结点,没有度为 1 的结点,结点个数 n = 2^h - 1,叶子结点一定在最后一层

3、扩充二叉树:对儿子数不够两个的结点添加空树叶

                  特点:新增的点必然是叶子结点,老结点必然是分支结点

          专属概念:外部路径长度E:根结点到每个空树叶的路径长度之和

                              内部路径长度 I:根结点到每个内部结点的路径长度之和

五、二叉树的性质(建议全部记住)

设度为 0 的结点数为 n0,1的为 n1,2的为 n2,结点数 n,高度 h(h>=1)

1、n = n0 + n1 + n2

2、n = n1 + 2*n2 + 1

3、n0 = n2 + 1

4、

5、最小高度为  向上取整

6、第 i 层 (i>=0)至多有  个结点

7、完全二叉树高度 h =  向上取整

8、满二叉树 叶子结点数 = 分支结点数 + 1

六、存储方式

1、链式存储 or 顺序存储

2、顺序存储时父子下标的特点

①从 1 开始编号 , 2i 为左儿子,2i + 1 为右儿子,i / 2 为父亲

②从 0 开始编号 , 2i + 1 为左儿子,2i + 2 为右儿子,( i - 1 ) / 2 为父亲

七、小问题:

1、树上的结点不是叶子结点就是分支结点,对吗?

答:对

2、树上的根结点一定是分支结点,对吗?

答:错。只有根结点时,根结点为叶子结点。

八、推论与证明:

1、高度为 h,度为 m 的树,对结点个数 n 有,

2、对三、4的证明:

利用六、1的结论可得

 于是得证

树与森林的概念与性质相关推荐

  1. 树与二叉树基本概念与性质

    树的基本概念 基本概念 树的度-- 一棵树中最大的结点度数 双亲-- 孩子结点的上层结点叫该结点的双亲 兄弟-- 同一双亲的孩子之间互成为兄弟 祖先-- 结点的祖先是从根到该结点所经分支上的所有结点 ...

  2. 树和二叉树的概念、性质、计算

    树和二叉树 树的基本术语 树的性质 树中的结点数 == 所有结点度数+1(重点) 度为m的数,第i层最多有    (重点) 高度为h的m次树,最多有  (重点) 具有n个结点的m次树的最小高度为 (向 ...

  3. 树 - 定义和基本概念

    一.树(Tree)是n(n>=0)个结点的有限集.n=0时称为空树.在任意一棵非空树中:(1)有且仅有一个特定的称为根(root)的结点. (2)当n>1时,其余结点可分为m(m>0 ...

  4. 树和二叉树的基本概念及性质

    目录 一.树概念及性质 1.树的概念 2.树的部分性质 3.树的表示 二. 二叉树概念及结构 1.概念 2.特殊的二叉树: 1.满二叉树 2.完全二叉树 3.二叉树的性质 4.堆的概念及结构 一.树概 ...

  5. 考研复习之数据结构笔记(九)树(上)(树和二叉树的概念、特征、性质及相关实例)

    目录 一.树的基本概念和术语 1.1 基本定义与特点 (1)基本定义: (2)基本特点 1.2 树的基本术语 1.3 树的基本性质 二.二叉树 2.1 二叉树的定义与性质 (1)基本概念 (2)与树的 ...

  6. c#二叉树 取叶子节点个数_数据结构第四章:树与二叉树(二叉树的概念、性质、特殊二叉树)...

    第四章:树与二叉树(二叉树的逻辑结构) 1.二叉树 二叉树是树结构的一种,故二叉树也是逻辑结构. 二叉树:二叉树是n(n≥0)个结点的有限集合. · 1)n=0时,二叉树为空; · 2)n>0时 ...

  7. 【数据结构-树】1.树与森林(树的遍历、树的存储方法、并查集的实现)

    树的定义 树是一种数据结构,它是由 n(n>=1)n(n>=1)n(n>=1) 个有限结点组成一个具有层次关系的集合.把它叫做 "树" 是因为它看起来像一棵倒挂的 ...

  8. 【数据结构基础/接口函数编写】二叉树第一弹之树和堆的概念和结构、基础堆接口函数的实现(编写思路加逻辑分析加代码实操,一应俱全的汇总)

    文章目录 树的概念及结构 树的概念 树的相关概念 树的表示 二叉树的概念及结构 二叉树的概念 特殊的二叉树: 二叉树的存储结构 二叉树的性质 顺序储存 链式储存 堆 堆的概念及结构 堆的实现 头文件 ...

  9. 数据结构——树及二叉树的概念及结构的了解

    文章目录 一.树概念及结构? 1.树的概念 2.树的相关概念 3.树的表示 4. 树在实际中的运用 二.叉树的概念及结构 1.概念 2.现实中的二叉树 3.特殊的二叉树 4.二叉树的性质 5.二叉树的 ...

最新文章

  1. Ansible06-管理roles
  2. ubuntu下创建eclipse桌面快捷方式
  3. Linux CenOS7下安装ActivetMQ
  4. 深入理解mybatis原理, Mybatis初始化SqlSessionFactory机制详解(转)
  5. 下次偶转贴贴子时得加上转贴才行~~~
  6. Hadoop基础-配置历史服务器
  7. 机器人电量估计方法及实践
  8. c语言中编译链接机制
  9. 小猿圈分享-数据分析工具
  10. Julia:String和ASCIIString
  11. Window open使用教程
  12. Cesium 加载自定义DEM数据
  13. 手机访问电脑虚拟服务器,User Agent Switcher插件使用教程【电脑模拟手机访问网站】...
  14. numpy创建单位矩阵和对角矩阵
  15. Android 白天黑夜模式切换适配及引起的Activity销毁重启解决
  16. 固定连接index.php,WP中去掉固定链接中的index.php和category
  17. [七夕节]——一款基于canvas绘制五颜六色线条合成一个爱心发光动画特效
  18. 石墨文档代码学习笔记分享
  19. Java双亲委派模型是什么、优势在哪、双亲委派模型的破坏
  20. 百度网盘搜索工具_2019

热门文章

  1. idea 创建多模块项目子模块为灰色
  2. shell 判断文件出现次数
  3. 如何使用SQL删除某个字段重复的记录,保留其中一条
  4. 10 Ways To Suck At Programming
  5. Python学习---基础函数的学习
  6. python 将数据写入excel
  7. 设计模式学习笔记(十八:模板方法模式)
  8. RabbitMQ 开启WEB管理
  9. httperf ---linux web站点压力测试
  10. nginx的反向代理和负载均衡的区别