无向图的欧拉回路和欧拉通路

本文深入探讨了无向图中的欧拉回路和欧拉通路概念,结合具体实例分析其性质,并提供了一道HDU ACM竞赛题目1878的解题思路和AC代码,帮助理解这两种图论概念在实际问题中的应用。
摘要由CSDN通过智能技术生成
//首先我认为需要区分的概念是欧拉回路和欧拉通路(算法竞赛入门经典中是欧拉道路),
//无向图:
//欧拉回路,即从无向图的一个节点出发每条边仅经过一次后,可以回到起点的一条回路
//判断方法:1.该无向图连通,这步bfs一次即可2.每个点的度数是偶数
//欧拉通路(欧拉道路),即从无向图的一个节点走出一条道路,每条边恰好经过一次(即不一定要返回起点)
//判断方法1.该无向图连通2.每一个点的度数是0(欧拉回路当然是欧拉通路)或含有2个度数那就只能从一个奇点出发经过其他边另一个奇点为止
//欧拉图:具有欧拉回路的图是欧拉图
//练习:Hdu 1878 欧拉回路

//http://acm.hdu.edu.cn/showproblem.php?pid=1878

ac代码:

#include<iostream>
#include<cstdio>
#include<queue>
using namespace std;
queue<int>q;
 int n;
 int indegree[1001];
 int a[1001][1001];
 int panduan()
 {
     int i;
     for (i=1;i<=n;i++)
        if (indegree[i]%2)
        return 1;
       return 0;
 }
 int bfs()
 {
     int vis[1001];
     int i,j,temp;
     q.push(1);
     for (i=1;i<=n;i++)
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值