首页 百科知识 树的定义和术语

树的定义和术语

时间:2022-10-27 百科知识 版权反馈
【摘要】:树的定义采用了递归定义的方法,即在树的定义中又用到树的概念,这正好反映了树的固有特性。图6-1为树的结构示意图。图6-1所示是树结构的一种直观画法,其特点是对树的逻辑结构的描述非常直观、清晰,是使用最多的一种描述方法。树的凹入表示法主要用于树的屏幕显示和打印输出。在数据结构中,树和森林并不像在自然界中那样有一个明显的量的差别。

6.1 树的定义和术语

本节先给出树(tree)的定义,然后介绍树的基本术语。

6.1.1 树的定义

1.树的定义

树是n(n≥0)个有限数据元素的集合。在任意一棵非空树T中,有以下一些特点。

(1)有且仅有一个特定的称为树根(root)的结点(根结点无前驱结点)。

(2)当n>1时,除根结点之外的其余结点被分成m(m>0)个互不相交的集合T1,T2,…,Tm。其中,每一个集合Ti(1≤i≤m)本身又是一棵树,并且称为根的子树。

树的定义采用了递归定义的方法,即在树的定义中又用到树的概念,这正好反映了树的固有特性。图6-1为树的结构示意图

img216

图6-1 树的结构示意图

2.树的其他表示法

图6-1所示是树结构的一种直观画法,其特点是对树的逻辑结构的描述非常直观、清晰,是使用最多的一种描述方法。除此以外,还有以下几种描述树的方法。

(1)嵌套集合法 嵌套集合法又称文氏图法,它是用集合的包含关系来描述树形结构,每个圆圈表示一个集合,套起来的圆圈表示包含关系。图6-1所示树的嵌套集合表示如图6-2(a)所示。

(2)圆括号表示法 圆括号表示法又称为广义表表示法,它是使用括号将集合层次与包含关系显示出来。图6-1所示树的圆括号表示法为:(A(B(D,E(I,J),F),C(G,H)))。

(3)凹入法 凹入法是用不同宽度的行来显示各结点,而行的凹入程度体现了各结点集合的包含关系,图6-1所示树的凹入法表示如图6-2(b)所示。树的凹入表示法主要用于树的屏幕显示和打印输出。

img217

图6-2 树结构表示法

6.1.2 基本术语

树的基本术语主要有下列几种。

(1)结点:树的结点包含一个数据元素及若干指向其子树的分支。

(2)结点的度:结点所拥有的子树数称为该结点的度(degree)。

(3)树的度:树中各结点度的最大值称为该树的度。

(4)叶子(终端结点):度为零的结点称为叶子结点。

(5)分支结点:度不为零的结点称为分支结点。

(6)兄弟结点:同一父亲结点下的子结点称为兄弟结点。

(7)层数:树的根结点的层数为1,其余结点的层数等于它双亲结点的层数加1。

(8)树的深度:树中结点的最大层数称为树的深度(或高度)。

(9)森林:零棵或有限棵互不相交的树的集合称为森林。

数据结构中,树和森林并不像在自然界中那样有一个明显的量的差别。任何一棵树,只要删去根结点就成了森林,如图6-3所示。

img218

图6-3 树删去根结点后成为森林

(10)有序树和无序树:如果树中结点的各子树从左到右是有次序的(即不能互换),则称这样的树为有序树;否则,称为无序树。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈