搜索
编程论坛
→
开发语言
→
C++论坛
→
『 C++教室 』
→ 非递归深度优先遍历怎么写
标题:
非递归深度优先遍历怎么写
取消只看楼主
云的一边
等 级:
新手上路
帖 子:6
专家分:0
注 册:2014-11-25
楼主
问题点数:0 回复次数:2
非递归深度优先遍历怎么写
非递归深度优先遍历怎么写(1)栈S初始化;visited[n]=0;
(2)访问顶点v;visited[v]=1;顶点v入栈S
(3)while(栈S非空)
x=栈S的顶元素(不出栈);
if(存在并找到未被访问的x的邻接点w)
访问w;visited[w]=1;
w进栈;
else
x出栈;
搜索更多相关主题的帖子:
元素
2014-11-27 12:06
云的一边
等 级:
新手上路
帖 子:6
专家分:0
注 册:2014-11-25
第
2
楼
得分:0
void DFS(AdjGraph *G,int v)
{
int w;
ArcNode *p;
printf("%d",v);
visited[v]=1;
p=G->adjlist[v].firstarc; while(p!=NULL)
{
w=p->adjvex;
if(visited[w]==0)
DFS(G,w);
p=p->nextarc;
}
}
2014-11-27 12:08
云的一边
等 级:
新手上路
帖 子:6
专家分:0
注 册:2014-11-25
第
3
楼
得分:0
回复 楼主 云的一边
这个是递归的,我不会写非递归的求解
2014-11-27 12:09
3
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-439235-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.161017 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved