图的深度优先遍历和广度优先遍历(顺序存储结构通用,适用于连通或非连通图,通过VC++调试运行).docVIP

  • 6
  • 0
  • 约2.64千字
  • 约 5页
  • 2016-08-06 发布于重庆
  • 举报

图的深度优先遍历和广度优先遍历(顺序存储结构通用,适用于连通或非连通图,通过VC++调试运行).doc

图的深度优先遍历和广度优先遍历(顺序存储结构通用,适用于连通或非连通图,通过VC调试运行)

//图的遍历(深度优先搜索与广度优先搜索) #includeiostream #includestdlib.h #includestdio.h using namespace std; #define Max 10 typedef char vexs[Max]; typedef int adjmat[Max][Max]; void dfs(vexs b,adjmat a,int v,int visited[],int n) {// b数组存放图中顶点的值,a为关联矩阵, v为出发顶点的序号,visited[]为是否访问过标志数组,n为图中顶点数 int w; coutb[v] ; visited[v]=1; w=0; while(wn a[v][w]==0) //寻找v的一个还没有访问过的邻接点w w++; while(wn){ //n为顶点数,该循环依次找到v的所有的邻接点,但要注意每找到一个都 //以该邻接点为新的“起点”递归调用深度优先搜索算法 if(visited[w]==0 a[v][w]!=0) dfs(b,a,w,visited,n); w++; //找下一个v的邻接点w } } void bfs(vexs b,adjmat a,int v,int visited[],int n) {//b数组存放图中顶点的值,a为关联矩阵,

文档评论(0)

1亿VIP精品文档

相关文档