您的位置:首页 > 其它

POJ 2230 无向图欧拉环

2015-10-01 21:46 260 查看

题意简述

打印能遍历无向图所有边恰一次的一种方案。

分析

无向图欧拉环模板题,DFS过程中直接倒序输出已访问顶点的编号,最后再加上起点即可。

代码实现

type
edge=record
re,next:longint
end;
var
n,m,cnt,i,x,y:longint;
f:array[0..10010] of longint;
e:array[0..100050] of edge;
vs:array[0..100050] of boolean;
procedure add(x,y:longint);
begin
inc(cnt);
with e[cnt] do
begin
re:=y;next:=f[x];
end;
f[x]:=cnt;
end;

procedure dfs(x:longint);
var tmp:longint;
begin
tmp:=f[x];
while tmp<>0 do
begin
if not vs[tmp] then
begin
vs[tmp]:=true;
dfs(e[tmp].re);
writeln(e[tmp].re);
end;
tmp:=e[tmp].next;
end;
end;

begin
readln(n,m);cnt:=1;
for i:=1 to m do
begin
readln(x,y);
add(x,y);add(y,x);
end;
dfs(1);
writeln(1);
end.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  poj