• 欧拉回路基本概念及定理


    1. 欧拉通路、欧拉回路、欧拉图
    无向图:
    1) 设G是连通无向图,则称经过G的每条边一次并且仅一次的路径为欧拉通路;
    2) 如果欧拉通路是回路(起点和终点是同一个顶点),则称此回路为欧拉回路(Euler circuit);
    3) 具有欧拉回路的无向图G称为欧拉图(Euler graph)。
    有向图:
    1) 设D是有向图,D的基图连通,则称经过D的每条边一次并且仅一次的有向路径为有向欧拉通路;
    2) 如果有向欧拉通路是有向回路,则称此有向回路为有向欧拉回路(directed Euler circuit);
    3) 具有有向欧拉回路的有向图D称为有向欧拉图(directed Euler graph)。

    2. 定理及推论

    欧拉通路和欧拉回路的判定是很简单的,请看下面的定理及推论。
    定理5.1 无向图G存在欧拉通路的充要条件是:G为连通图,并且G仅有两个奇度结点(度数为奇数的顶点)或者无奇度结点。
    推论5.1:

    1) 当G是仅有两个奇度结点的连通图时,G的欧拉通路必以此两个结点为端点。
    2) 当G是无奇度结点的连通图时,G必有欧拉回路。
    3) G为欧拉图(存在欧拉回路)的充分必要条件是G为无奇度结点的连通图。

    定理5.2 有向图D存在欧拉通路的充要条件是:
    D为有向图,D的基图连通,并且所有顶点的出度与入度都相等;或者除两个顶点外,其余顶点的出度与入度都相等,而这两个顶点中一个顶点的出度与入度之差为1,另一个顶点的出度
    与入度之差为-1。
    推论5.2:
    1) 当D除出、入度之差为1,-1的两个顶点之外,其余顶点的出度与入度都相等时,D的有向欧拉通路必以出、入度之差为1的顶点作为始点,以出、入度之差为-1的顶点作为终点。
    2) 当D的所有顶点的出、入度都相等时,D中存在有向欧拉回路。
    3) 有向图D为有向欧拉图的充分必要条件是D的基图为连通图,并且所有顶点的出、入度都相等。

    3. 欧拉回路的应用

    欧拉回路最著名的有三个应用,大家可以网上百度一下,这里不详述。

    • 哥尼斯堡七桥问题
    • 一笔画问题。
    • 旋转鼓轮的设计

    4.欧拉回路的判定

    判断欧拉路是否存在的方法

    有向图:图连通,有一个顶点出度大入度1,有一个顶点入度大出度1,其余都是出度=入度。

    无向图:图连通,只有两个顶点是奇数度,其余都是偶数度的。

    判断欧拉回路是否存在的方法

    有向图:图连通,所有的顶点出度=入度。

    无向图:图连通,所有顶点都是偶数度。

    5.具体的题目实现

     6.还有其他一些关于这方面的博客写的挺好的

    关于欧拉回路和欧拉路径

    欧拉回路

  • 相关阅读:
    Anaconda下载及安装教程
    机器学习之一元线性回归模型
    PyCharm下载及安装教程
    Python基础之数据类型、变量、常量
    新旧代码的兼容(c和c++)
    埃拉托斯特尼--筛法 c++求质数,用bitset类型
    使用预处理器进行调试
    刷题-网易2018实习生招聘笔试题
    深度优先搜索-DFS遍历图-C++
    图--邻接矩阵c++
  • 原文地址:https://www.cnblogs.com/luyingfeng/p/3877338.html
Copyright © 2020-2023  润新知