6.1 树的定义和术语

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机科学技术学院Email:

zhaihy01@

第6章树

本章主要内容

6.1 树的基本概念和术语

6.2 二叉树及二叉树的存储结构

6.3 二叉树的遍历及线索二叉树

6.4 树和二叉树的转换

6.5 Huffman树和Huffman编码

2

计算机科学技术学院Email:

zhaihy01@

6.1 树的基本概念和术语

4

树的基本概念和术语

1.树的定义

树(Tree )是n (n≥0)个有限数据元素的集合。在任意一棵非空树T 中:

(1)有且仅有一个特定的称为树根(Root )的结点,根结点无前趋结点;

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

树的定义采用了递归定义的方法,即在树的定义中又用到树的概念,这正好反映了树的固有特性。

5

A

B C

H

G

F

E

D

J

I

2.树的表示法

树的结构表示法,是一种直观的画法,其特点是对树的逻辑结构的描述非常直观、清晰。是使用最多的一种描述方法。

树结构示意图

(1)嵌套集合法

嵌套集合法,也称为文氏图法(Venn Diagram ),它是用集合以及集合的包含关系来描述树形结构,每个圆圈表示一个集合,套起来的圆圈表示包含关系。图(a)就是一棵树的嵌套集合表示。A

B C E

I

J

D F

G

H

(a )嵌套集合表示

A

B

C

H

G

F E

D

J

I

(2)圆括号表示法

圆括号表示法也称为广义表表示法,它是使用括号将集合层次与包含关系显示出来。

(A (B (D,E (I,J ),F ),C (G,H )))

A

B

C

H

G

F

E D

J

I

A

B C E

D J

F G H I A

B

C

H

G

F E D

J

I (3)凹入法

凹入法是用不同宽度的行来显示各结点,而行的凹入程度体现了各结点集合的包含关系。树的凹入表示法主要用于树的屏幕显示和打印输出。

A

B C D

E F G H I J K L A: 是根结点,同时是B、C、D结点的父结点或双亲结点B: 是E、F的父结点,E、F 是B的子结点或孩子结点J、K、L、F、G、I:是叶子节点

10

A

B C D E F

G

H I

J

K

L

B 的子孙为E 、F 、J 、K 。

G 与E 、F 、H 、I 互为堂兄弟结点

L 的祖先为A 、D 、H 。

B,C,D 互为兄弟

A

B C D

E F G H I J K L 结点A的层次:1

结点L的层次:4

结点的度: A的度为3

C的度为1

F的度为0

树的度:3树的深度:4

注意: 一棵树中,

结点(node)

❝结点的度(degree)❝分支(branch)结点❝叶(leaf)结点❝子女(child)结点❝双亲(parent)结点❝

兄弟(sibling)结点❝

祖先(ancestor)结点❝子孙(descendant)结点❝结点所处层次(level)❝树的高度(depth)❝

树的度(degree)

有序树⏹无序树⏹森林

结点

:一个数据元素+若干指向子树的分支;结点度(Degree ):该结点所拥有的子女数;树的度:树内各结点度的最大值;叶结点(Leaf ):度为0的结点;

分枝结点(Branch node ):度大于0的结点;

结点的层次(Level ):设根结点的层次为1,其它任一结点

所在的层次是其双亲的层次加1;

深度(Depth ):树中结点的最大层次;或称为高;兄弟(Sibling):具有同一双亲的结点互称兄弟;

.A B C

D

E F G H I J

K L

M

堂兄弟(Cousin):双亲在同一层的结点之间互称堂兄弟;

路径(Path):如果有结点序列n

1

,n2,n3,…,n k,并且前1个结

点是后1个结点的双亲;它的长度是k-1;

祖先、后代(ancestor):一个结点是它所有子树中的结点

的祖先,这些结点是它的后代(子孙);有序树(Ordered tree):每个结点的子女由左到右是有次

序的称有序树;否则是无序树;

A

B C

A

C B

无序A

B C D

E F G H I J

森林:是m(m≥0)棵互

不相交的树的集合。

任何一棵非空树是一个二元组Tree = (root,F)

其中:root 被称为根结点,

F 被称为子树森林。A

B C D

E F G H I J K L M

相关文档
最新文档