欧拉回路
Posted ly_rabbit
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了欧拉回路相关的知识,希望对你有一定的参考价值。
从节点为奇数的一个起点出发
源代码如下:
#include<stdio.h> #include<string.h> #define MAX 100 int n,m,G[MAX][MAX],vis[MAX][MAX]; int count=1; void euler(int u) { for(int v=0;v<n;v++) if(G[u][v] && !vis[u][v]) { printf("%d %d\n",u,v); count++; vis[u][v]=vis[v][u]=1; if(count>m) return ; euler(v); } } void main() { scanf("%d%d",&n,&m); memset(G,0,sizeof(G)); for(int i=0;i<m;i++) { int u,v; scanf("%d%d",&u,&v); G[u][v]=G[v][u]=1; } euler(0); }
以上是关于欧拉回路的主要内容,如果未能解决你的问题,请参考以下文章