zoukankan      html  css  js  c++  java
  • 一笔画问题

    我们知道欧拉环路定理:

    如果一个图每个点的度数都是偶数,则可以存在一条欧拉环路。

    道理不复杂,对于偶数度顶点,因为度数为偶数,所以,进入一个结点必然存在一条出该结点的路,这样我们肯定可以找到一种方法遍历所有的边

    一笔画问题可以简单点说是:

    如果一个图每个点的度数都是偶数,或奇数度顶点的个数有且只有两个,则存在一笔画的方法。

    显然不可能存在更多的奇数度顶点,否则图中经过的奇数度顶点,没法再次到达。

    所以一笔画问题的结论:

    (1)如果每个顶点的度数为偶数,那么存在一个欧拉环

    (2)如果有两个奇数度顶点,则这两个奇数度顶点一个为起始点、一个为终止点。

    (3)如果奇数度顶点>2,则无解。

    所以说,如果图都是偶数度顶点,则可以用找欧拉环问题的方法求解。

    如果图的顶点中有两个奇数度顶点a、b,也不麻烦,我们人为添加一条a->b的边,这样图就变成了所有点的度数都是偶数的图。用找欧拉环的方式求解,这一条从a->a的欧拉环路,再加上之前搜索的a->b的通路即为所求。

  • 相关阅读:
    简单的验证码;在一个数组中随即打印出4个不重复的字母
    数据类型
    java语法基础
    mac 开机运行脚本
    【mac】 搭建java环境
    mac 复制文件到NTFS格式的移动硬盘
    JAVA学习日报 8.19
    JAVA学习日报 8.20
    (VI)事务:Spring 事务管理
    (VI)事务:Spring 事务细节
  • 原文地址:https://www.cnblogs.com/zhazhalovecoding/p/6077181.html
Copyright © 2011-2022 走看看