我想在无向图中找到所有的euler周期。图表的表示是邻接列表。我有一个只找到一个循环的函数。如何改善它以找到所有周期?
void DFSEuler(int v, list<int> L[])
{
while(!L[v].empty())
{
int x = L[v].front();
L[v].pop_front();
for(list<int>::iterator i =L[x].begin(); i != L[x].end(); i++)
if((*i) == v)
{
L[x].erase(i); break;
}
DFSEuler(x, L);
}
q.push_front(v);
}
图形已连接,所有顶点均匀。