网站首页 > 技术文章 正文
树是数据结构中的一种,其属于非线性数据结构结构的一种,我们前文所提到的数据结构多数都是线性的,这也是较为简单的数据结构,而接下来的树与图均属于非线性数据结构,也是概念极多的一类。
关键词:节点, 结构, 数据结构, 术语, 子树
1.什么是树
树是数据结构中的一种,其属于非线性数据结构结构的一种,我们前文所提到的数据结构多数都是线性的,这也是较为简单的数据结构,而接下来的树与图均属于非线性数据结构,也是概念极多的一类。
树是由结点或顶点和边组成的(可能是非线性的)且不存在着任何环的一种数据结构。没有结点的树称为空(null或empty)树。一棵非空的树包括一个根结点,还(很可能)有多个附加结点,所有结点构成一个多级分层结构。
树的定义:n个节点组成的有限集合。n=0,空树;n>0,1个根节点,m个互不相交的有限集,每个子集为根的子树。
如图所示,图为一棵树:
2.树的基本术语
l 节点的度:树中某个节点的子树的个数。
l 树的度:树中各节点的度的最大值。
l 分支节点:度不为零的节点。
l 叶子节点:度为零的节点。
l 路径:i->j;路径长度:路径经过节点数目减1。
l 孩子节点:某节点的后继节点;双亲节点:该节点为其孩子节点的双亲节点(父母节点);兄弟节点:同一双亲的孩子节点;子孙节点:某节点所有子树中的节点;祖先节点:从树节点到该节点的路径上的节点。
l 节点的层次:根节点为第一层(以此类推);树的高度:树中节点的最大层次。
l 有序树:树中节点子树按次序从左向右安排,次序不能改变;无序树:与之相反
l 森林:互不相交的树的集合。
3.树的性质
l 树的节点树为所有节点度数加1(加根节点)。
l 度为m的树中第i层最多有m^(i-1)个节点。
l 高度为h的m次树至多(m^h-1)/(m-1)个节点。
l 具有n个节点的m次树的最小高度为logm( n(m-1) + 1 ) 向上取整。
猜你喜欢
- 2024-10-19 老公比父母更重要?你和父母的人生排序原来这么不同
- 2024-10-19 父母介入过多,为何更容易毁掉婚姻?
- 2024-10-19 到了清明节才知道,父母是“一场轮回”
- 2024-10-19 C++数据结构--树 c++数据结构教程
- 2024-10-19 笔记~数据结构~树 数据结构树的基本操作
- 2024-10-19 二叉树的定义,性质及常见题 二叉树的基本性质
- 2024-10-19 后天教育的关键节点,做父母的注意了,一定要注意以下几点
- 2024-10-19 与父母相处的几点建议(原创) 和父母如何相处的建议五条
- 2024-10-19 Java 数据结构:什么是树?二叉树的存储结构、遍历、概述
- 2024-10-19 数据结构与算法 -- B-树 数据结构中的树
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)