实验五 图的遍历.doc

实验题目: 图的遍历 需求分析 以邻接表为存储结构,实现连通无向图的深度优先和广度优先遍历。以用户指定的结点为起点,分别输出每种遍历下的结点访问序列。 ① 输入的形式和输入的值的范围:输入图的顶点个数和边的个数;输入每个顶点对应的值;输入每条边对应的序号。以上输入均为整形数。 ② 输出的形式:将建立的邻接表输出;将按照深度遍历图的顺序输出结点;按照广度遍历图的顺序输出结点。 ③ 程序能达到的功能:对图建立邻接表存储,输出邻接表,并对其进行遍历(深度优先和广度优先),将遍历结果打印输出。 ④ 测试数据: 顶点数: 5 边数: 6 顶点对应的值: 1 2 3 4 5 每条边对应的顶点序号:(0 3)(0 1)(2 3)(1 2)(1 4)(2 4) 算法设计 本程序包含十一个函数: 主函数main 创建邻接表函数:void CreateGraph(ALGraph G); 广度遍历邻接表函数:void BFSTraverse(ALGraph G, int(*Visit)(int v)) 深度遍历邻接表函数:void DFSTraverse(ALGraph G, int(*Visit)(int v)) void DFS(ALGraph G, int v) int FirstAdjVex(ALGraph G, int v) int NextAdjVex(ALGraph G, int v

文档评论(0)

1亿VIP精品文档

相关文档