fleury算法
fluery算法
void dfs(int x){ s.top++; s.node[s.top] = x; for(int i=0;i<n;i++){ if(graph[x][i]>0{ graph[x][i] = graph[i][x] = 0; dfs(i); break; } } return; } void fluery(int start){ int i; s.top = 0; s.node[s.top] = start; while(s.top>=0){ int b = 0; for(int i=0;i<n;i++){ if(s.node[s.top][i]>0){ b = 1; break; } } if(b==0){ cout<<s.node[s.top]+1<<" "; s.top--; }else{ s.top--; dfs(s.node[s.top+1]); } } cout<<endl; }