数据结构(C语言版) 图 算法设计Demo2

Posted Aiden (winner)

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构(C语言版) 图 算法设计Demo2相关的知识,希望对你有一定的参考价值。

一个连通图采用邻接表作为存储结构,设计一个算法,实现从顶点v出发的深度优先遍历的非递归过程。

[算法描述]

Void DFSn(Graph G,int v)
//从第v个顶点出发非递归实现深度优先遍历图G
	Stack s;
	SetEmpty(s);
	Push(s,v);
	While(!StackEmpty(s))
	//栈空时第v个顶点所在的连通分量已遍历完
	Pop(s,k);
		If(!visited[k])
			visited[k]=TRUE;
			VisitFunc(k); //访问第k个顶点
		//将第k个顶点的所有邻接点进栈
			for(w=FirstAdjVex(G,k);w;w=NextAdjVex(G,k,w))	
				if(!visited[w]&&w!=GetTop(s))
					Push(s,w);    //图中有环时w==GetTop(s)
			
		
	

以上是关于数据结构(C语言版) 图 算法设计Demo2的主要内容,如果未能解决你的问题,请参考以下文章

数据结构(C语言版) 树和二叉树 算法设计Demo2

数据结构(C语言版) 栈和队列 算法设计Demo2

数据结构(C语言版) 图 算法设计Demo4

数据结构(C语言版) 图 算法设计Demo3

数据结构(C语言版) 图 算法设计Demo5

数据结构(C语言版) 图 算法设计Demo1