zoukankan      html  css  js  c++  java
  • 欧拉道路与欧拉回路

    欧拉道路与欧拉回路

    欧拉道路:通过图G中每条边一次且仅一次的道路称作该图的欧拉道路。

    欧拉回路:通过图G中每条边一次且仅一次的回路称作该图的欧拉回路。

    欧拉图:存在欧拉回路的图称为欧拉图。

    欧拉在1736年给出了欧拉道路/回路存在的必要条件,在1873年希尔霍尔策首次给出了刻画欧拉图的充要条件。

    定理

    (a)无向图G是欧拉图(存在欧拉回路)当且仅当G是连通的且所有顶点都是偶数度

    (b)无向图G存在欧拉道路当且仅当G是连通的且奇数度顶点不超过2个

    下面证明(a):

    1、(必要性)如果是欧拉图,从一个起点出发,经过每个顶点必定是一进一出,再回到起点,这样所有的点都是偶数度

    2、(充分性)从任一点出发,构造G的一条简单回路C(想想为什么一定可以),如果C已经包含所有边,那G就是欧拉图;

    若C不是G的回路,则从G中删去C的各边和孤立顶点(如果存在),得到G1,显然G1中个顶点的度还是偶数。原图是连通的,G1和C必然存在公共顶点u。从u出发,在G1中得到回路C1。将C和C1连接起来得到包含边数比原来更多的G的一条简单回路。由于边是有限的,这个过程一定会结束。最后得到包含所有边的回路,就是欧拉回路。

    下面证明(b):

    在(a)的基础上简单证明

    首先,易知,奇数度顶点不超过只能是0个或2个(握手定理保证不可能存在奇数个奇顶点)。奇数度顶点为0就是情况(a)

    若有两个奇数度顶点,我们认为地在之间添加一条虚拟的边,这个每个顶点都是偶数度了,所以就存在欧拉回路。而这个欧拉回路一定包含我们虚拟的边,把虚拟的边删去,就得到包含图中所有边的欧拉道路。必要性证明略。

    推广到有向图

    有向图存在欧拉道路的两个条件:

    1、最多只能有两个点的入度不等于出度,而且必须是其中一个点的出度且比入度大1(把它作为起点),另一个的入度比出度大1(把它作为终点)。

    2、在忽略边的方向后,图必须是连通的。

    参考链接:中国大学mooc 离散数学 刘铎

  • 相关阅读:
    iOS,Layer
    iOS 手势冲突
    ECharts
    手动安装Package Control
    webstorm配置svn详解
    js 对象 类型转换
    google 跨域解决办法
    关于内层DIV设置margin-top不起作用的解决方案
    图片与文字在div里实现垂直水平都居中
    css3之3D翻牌效果
  • 原文地址:https://www.cnblogs.com/lfri/p/9925429.html
Copyright © 2011-2022 走看看