树的定义
-
定义:树(Tree)是n(n>=0)个结点的有限集。
n=0时称为空树。 -
组成:
根节点root:树的结点包含一个数据元素和若干指向其子树的分支。
叶子结点(Leaf)/终端结点:无后继结点。
分支结点/非终端结点:有后继结点。
边:连接分支结点
子树(SubTree):当n>1时,其余结点可分为m(m>0)个互不交互的有限集T1、T2…Tm,其中每一个集合本身又是一棵树,并称为根的子树。 -
特点:在任意一颗非空树中
1.有且仅有一个特定的称为根结点;
2.除了根结点,任何一个结点都有且仅有一个前驱
3.每个结点可以有0个或多个后继结点
4.结点的子树是互不相交的
树形逻辑结构的应用
- 一个国家的省、市、区…
- 电脑文件系统:文件夹下的不同文件
- 思维导图
结点之间的关系描述
祖先结点:从根结点到该结点所经过分支上的所有结点。子孙结点:以某结点为根的子树中的任一结点都称为该节点的子孙。- 双亲结点(
父结点):一个结点的直接前驱结点 孩子结点:一个结点的直接后继结点兄弟结点:同一个双亲的孩子结点之间互称兄弟结点。- 堂兄弟结点:同一层的非兄弟结点
- 路径:结点之间的路径只能从上到下
结点、树的属性描述
- 结点的层次(深度):从上往下数
- 结点的高度:从下往上数
结点的度:有几个孩子(分支)- 树的高度(深度):总共有多少层。
树的度:各结点的度的最大值
树的性质
- 结点总数=总度数+1
度为m的树&m叉树的区别
| 度为m的树 | m叉树 |
|---|---|
| 各结点的度的最大值为m | 每个结点最多只能有m个孩子的树 |
| 任意结点的度<=m(最多有m个孩子) | 任意结点的度<=m(最多有m个孩子) |
| 至少有一个结点的度为m | 允许所有结点的度都<m |
| 一定是非空树,至少有m+1个结点 | 可以是空树 |
有序树 和 无序树
有序树:树中结点的各子树从左至右是有次序的,不能互换无序树:树中结点的各子树从左至右是无次序的,可以互换
本文详细解读树的基本概念,包括树的定义(根节点、叶子结点和子树)、逻辑结构应用(如文件系统和思维导图)、结点关系(祖先、子孙等)、属性描述(如度和高度)以及有序树和无序树的区别。带你全面掌握树的数据结构特性。
1325

被折叠的 条评论
为什么被折叠?



