(1) InitQueue(&Q);
(2) IsEmpty(&Q);
(3) EnterQueue(&Q,x);
(4) DeleteQueue(&Q,&y);
}ADT LinkQueue
3.ADT TimeTree{
数据对象 D:一个集合,该集合中的所有元素具有相同的特性
数据关系 R:若 D 为空,则为空树。若 D 中仅含有一个数据元素,则 R 为空集,
否则 R={H},H 为如下二元关系:
(1) 在 D 中存在唯一的称为根的数据元素 root,它在关系
H 中没有前驱
(2) 除 root 以外,D 中每个结点在关系 H 下有且仅有一个
前驱。
基本操作:
(1) CreateTimeTree(p,i,j,&Q,infolist arcs);
(2) CopyTimeTree(p,q);
(3) VisitTimeTree(p);
}ADT TimeTree
� 系统中子程序及功能要求:
1.Administer(ALGraph *G):提供管理员管理城市交通系统的界面,通过该子程
序可调用其他管理交通系统的子程序。
2.initgraph(ALGraph *G):初始化交通系统的子程序
3.createcityfile( ):创建城市文件的子程序
4.createplanefile( ):创建航班文件的子程序
5.createtrainfile( ):创建列车时刻表文件的子程序
6.LocateVertex(ALGraph *G,char *v):提供城市名在城市交通系统中相应的编号
7.CreateGraph(ALGraph *G):创建城市交通系统
8.cityedit(ALGraph *G):提供城市编辑功能
9.EnterVertex(ALGraph *G):提供在城市交通系统中加入城市的功能
10.DeleteVertex(ALGraph *G):提供在城市交通系统中删除城市的功
能
11.flightedit(ALGraph *G):提供航班编辑功能
12.EnterplaneArc(ALGraph *G):提供在城市交通系统中加入航班的功
能
13.DeleteplaneArc(ALGraph *G):提供在城市交通系统中删除航班的
功能
14:trainedit(ALGraph *G):提供列车车次的编辑功能
15.EntertrainArc(ALGraph *G):提供在城市交通系统中加入列车车次
的功能
16.DeletetrainArc(ALGraph *G):提供在城市交通系统中删除列车车
次的功能
17.UserDemand(ALGraph G):提供用户咨询的界面
18.DemandDispose(int n,ALGraph G):通过该子程序调用其他咨询子程序
19.InitQueue(LinkQueue *Q):初始化队列
20.EnterQueue(LinkQueue *Q,int x):入队操作
21.DeleteQueue(LinkQueue *Q,int *x):出队操作
22.IsEmpty(LinkQueue *Q):队列判空操作
23.TransferDispose(int k,infolist(*arcs)[MAX_VERTEX_NUM],
(*arcs)[MAX_VERTEX_NUM] ,ALGraph G,ALGraph G,int v0,int v1)
:提供最少中转次数决策的功能