📄 深度优先.cpp
字号:
int visited[MAXVEX],
void dfs(adjlist adj,int v)
{
int i;
struct edgenode *p;
for(i=0;i<n;i++)
visited[i]=0;
visited[v]=1;
printf("%d",v); //取v的边的表头指针
p=adj[v].link;
while(p!=NULL)
{
if(viited[p->adjvex==0) //从v的未访问过的邻接点出发进行深度遍历
dfs(adj,p->adjvex);
p=p->next; //找v的下一个邻接点
}
}
/*方法2
void traver(TD g[],int n)
{ int i;
static int visited[M];
for(i=1;i<=n;i++)
visited[i]=0;
for(i=1;i<=n;i++)
if(visited[i]==0)
dfs(g,i,visited);
}
void dfs(TD g[],int v,int visited[])
{ JD *w;
int i;
printf("%d ",v);
visited[v]=1;
w=g[v].firstarc;
while(w!=NULL)
{ i=w->adjvex;
if(visited[i]==0)
dfs(g,i,visited);
w=w->next;
}
}
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -