int visited[maxsize]={0}; //是否访问标记,访问过置为1
void DFS(AGraph *G,int v) //图和起点标号
{
ArcNode *p; //边结点指针
visited[v]=1; //置为已访问
cout<<G->adjlist[v].data; //输出该节点的数据
p=G->adjlist[v].firstarc; //p指向该顶点的第一条边
while(p!=NULL)
{
if(visited[p->adjvex]==0) //顶点未被访问递归访问他
DFS(p,p->adjvex);
p=p->nextarc; //p指向顶点v下一条边的终点
}
详细解决方案
图的深度优先搜索遍历
热度:51 发布时间:2024-02-27 10:14:59.0
相关解决方案