问一个关于图的深度优先遍历算法实现的问题

2025-05-14 02:38:57
推荐回答(1个)
回答1:

不知道你看的是什么书,代码也只能猜测一下:

//遍历vertex
void MGraph::DFSTraverse(int v)
{
// 输出当前vertex, 并设为已遍历
cout<
// 对所有vertex进行测试
for(j=0;j// 如果vertex[j] 和当前的vertex有边相连,并且没有访问过,递归遍历vertex[j]
if(arc[v][j]==1&&visited[j]==0)DFSTraverse(j);
}

从递归关系来看,就是从一个vertex,找和它有边相连的vertex进行遍历,因此,是深度优先遍历。