
LOGO
1
数据结构
中国地质大学信息工程学院

LOGO
2
第五章 树

3
内容提要
5.1 树的基本概念
5.2 二叉树
5.3 二叉树的存储表示
5.4 二叉树的遍历及其应用
5.6 树与森林
5.7 树与森林的遍历及其应用
5.8 堆及其应用
5.9 Human 树及其应用

4
优先队列
队列:
队列:
FIFO
FIFO
(按元素进入队列的次序);
(按元素进入队列的次序);
优先队列(
优先队列(
Priority Queue
Priority Queue
):出队列的顺序由元
):出队列的顺序由元
素的
素的
优先级
优先级
决定,如:
决定,如:
•
医院中的急诊处理;
医院中的急诊处理;
•
操作系统中使用优先队列进行作业调度;
操作系统中使用优先队列进行作业调度;
•
事件驱动模拟处理。
事件驱动模拟处理。

5
最大优先队列的 ADT
ADT MaxPriorityQueue
ADT MaxPriorityQueue
{
{
实例
实例
有限的元素集合,每个元素都有一个优先权操作
有限的元素集合,每个元素都有一个优先权操作
Create( )
Create( )
:创建一个空的优先队列
:创建一个空的优先队列
Size( )
Size( )
:返回队列中的元素数目
:返回队列中的元素数目
Max( )
Max( )
:返回具有最大优先权的元素
:返回具有最大优先权的元素
Insert(x)
Insert(x)
:将
:将
x
x
插入队列
插入队列
DeleteMax(x)
DeleteMax(x)
:从队列中给删除具有最大优先权的元素,
:从队列中给删除具有最大优先权的元素,
并将该元素返回至
并将该元素返回至
x
x
}
}