zoukankan      html  css  js  c++  java
  • 有关欧拉通路/回路的一些资料整理

    这两天看了下欧拉回路,整理下资料,以备以后回顾。

    1.欧拉回路,欧拉通路,欧拉图

    无向图:

    1)设G为连通无向图,则称经过G的每条边一次仅且一次的路径为欧拉通路。

    2)如果欧拉通路是回路(起点和终点是同一个顶点),则称此回路为欧拉回路。

    3)具有欧拉回路的无向图G称为欧拉图。

    有向图:

    1)设D是连通有向图,则称经过G的每条边一次仅且一次的有向路径为有向欧拉通路。

    2)如果有向欧拉通路是回路,则称此回路为有向欧拉回路。

    3)具有有向欧拉回路的有向图G称为有向欧拉图。

     

    2.定理及推论

    定理1:无向图G存在欧拉通路的充要条件是:G为连通图,并且G仅有两个奇度结点(度数为奇数的顶点)或无奇度结点。

    推论1.1:当G是仅有两个奇度结点的连通图时,G的欧拉通路必以此两个节点为端点。

    推论1.2:当G是无奇度结点的连通图时,G必有欧拉回路。

    推论1.3:G为欧拉图(存在欧拉回路)的充要条件是G为无奇度结点的连通图。

     

    定理2:有向图D存在欧拉通路的充要条件是:D为有向连通图,并且所有顶点的出度和入度相等;或者除两个顶点外,其余顶点的出度与入度都相等,而这两个顶点中一个顶点的出度与入度之差为1,另一个顶点的出度和入度之差为-1

    推论2.1:当D除出度入度之差为1,-1的顶点外,其他顶点的出度和入度都相等时,D的有向欧拉通路必以出度入度之差为1的顶点为始点,出度入度之差为-1的顶点为终点。

    推论2.2:当D的所有顶点的出度和入度都相等时,D中存在有向欧拉回路。

    推论2.3:有向图D为有向欧拉图的充要条件是D的基图为连通图,并且所有顶点的出度和入度相等。

     

    3.欧拉回路的应用

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

    4.欧拉回路的判定

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

    有向图:连通图,所有顶点出度等于入度

     

    5.欧拉回路输出路径

    1.DFS搜索

    利用欧拉定理判断出一个图存在欧拉回路后,选择一个正确的起始顶点,用DFS遍历所有的边(每条边只遍历一遍),遇到走不通则回退。在搜索前进方向上将遍历的边顺序记录下来。

    这组边组成的就是欧拉回路。(判断该图是不是欧拉回路,在此基础上输出欧拉回路)

    2.套圈法

  • 相关阅读:
    ios学习记录 day45 UI21 特效动画
    ios学习记录 day44 UI20 Storyboard 高级可视化编程 + 单例
    ios学习记录 day43 UI19 标签视图 和 block用法
    ios学习记录 day42 UI18 集合视图
    ios学习记录 day41 UI17 多线程
    7-2 How Many Ways to Buy a Piece of Land (25 分)
    7-1 Panda and PP Milk (20 分)
    1146 Topological Order (25 分)
    1089 Insert or Merge (25 分) 归并排序
    1098 Insertion or Heap Sort (25 分) 堆
  • 原文地址:https://www.cnblogs.com/pavtlly/p/9507408.html
Copyright © 2011-2022 走看看