void DFS(int i)
{
visit[i]=1;
vector
for(it=vec[i].begin();it!=vec[i].end();it++)
if(visit[*it]==0)
DFS(*it);
/*
for(int i=1;i<=P;i++)
{
if(visit[i]==0)
{
DFS(i);
}
}
}
这是我代码中抽出来的一部分,我使用iterator进行遍历时正确的,使用简单的for循环是错误的,
这里的visit[]数组是标记无向图中的顶点是否被访问过 P是顶点数目
我的这个dfs想实现的是 判断这个无向图是否为欧拉图(还未判断奇点)