需求分析
以邻接表为存储结构,实现连通无向图的深度优先和广度优先遍历。以用户指定的结点为起点,分别输出每种遍历下的结点访问序列和相应生成树的边集。
每个结点用一个编号表示(如果一个图有n个结点,则它们的编号分别为1,2,…,n)。通过输入图的全部边输入一个图,每个边为一个数对,可以对边的输入顺序作出某种限制。注意,生成树的边是有向边,端点顺序不能颠倒。
1) 建立向图G的邻接表表示。按照用户输入顶点数,弧数. (2) 输出图中边的表示。用A,B)表示 实现向图的深度优先搜索遍历。实现向图的广度优先搜索遍历,使用辅助队列q以存储已经被访问的路径长度为1,2,```的顶点,并且访问标志数组visited,实现对图的遍历.
抽象数据类型图的定义如下: ADT{ 数据对象V:V是具有相同特性的数据元素的集合,称为顶点集。 数据关系R: R={VR} VR={(v,w)|v,wV,(v,w)表示v和w之间存在路径} 基本操作P: CreateGraph(G,V,VR) ???初始条件:V是图的顶点集,VR是图中边的集合。 ???操作结果:按V和VR的定义构造图G。 DestroyGraph(G) ???初始条件:图G存在。 ???操作结果:销毁图G。 LocateVex(G,u) ???初始条件:图G存在,u和G中顶点有相同特征。 ???操作结果:若G中存
原创力文档

文档评论(0)