标签:通过 欧拉 class 欧拉路径 路径 相等 偶数 math line
如果图\(G\)中的一个路径包括每个边恰好一次,则该路径称为欧拉路径
该路径是通路,则称为欧拉通路,是回路,则称为欧拉回路
有零个或两个奇数度的点,则存在欧拉通路
每个点的度数都是偶数,则存在欧拉回路
有一个点出度比入度大\(1\),有一个点入度比出度大\(1\),除这两点外,其余点每个点的出度和入度相等或每个点的出度和入度相等,则存在欧拉通路
每个点的出度和入度相等,则存在欧拉回路
可以通过\(dfs\)来找欧拉回路方案,可以弧优化
\(code:\)
void dfs(int x)
{
for(int i=1;i<=n;++i)
{
if(e[x][i])
{
e[x][i]=e[i][x]=0;
ed[++cnt]=(edge){x,i};
dfs(i);
}
}
st[++top]=x;
}
标签:通过 欧拉 class 欧拉路径 路径 相等 偶数 math line
原文地址:https://www.cnblogs.com/lhm-/p/12633854.html