笔画问题(欧拉图).docxVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
笔画问题(欧拉图)

2010-10-18 17:32 by EricZhang(T2噬菌体), 3556 visits, 网摘, 收藏, 编辑关于一笔画问题的数学分析(对一道面试题的总结与扩展思考)摘要前几天参加了一个公司的面试,其中被问到了一个题。面试官在纸上画了一个图形(具体图形见下文),问我能不能一笔画出这个图形,要求每条边必须只走一次,并且画的过程中笔不能离开纸。当时我没有试着去画,而是凭着自己图论方面的知识在几秒钟之内告诉面试官不可能做到,然后简单说了一下理由。面试结束后我翻阅了图论相关的资料,发现当时自己虽然给出了正确答案,但理由并不完全正确。昨天我花了几个小时仔细研究了一下相关的理论,总结了一下这类问题的类型和解法,写成此文,分享给大家。问题的提出当时面试官给我出的问题是这样的:对于下面这个图形,让我一笔画出,要求每条边必须只走一次,并且画的过程中笔不能离开纸。面试时我给出的回答是不可能做到,面试结束后我也从数学上证明了这个这个回答。当然有兴趣的朋友可以试着画画看。这个问题其实就是我们小时候会玩到的一笔画游戏。这类问题看似简单直观,但是仔细研究下来却蕴含了很多东西,而且涉及了图论中一个非常重要的研究课题——欧拉迹。而且这类问题可以扩展出很多东西,例如任意给一个图可不可以完成一笔画且最后回到起始点?再如到底什么样的图可以一笔画出来?什么样的图一笔画不出来?如果一个图可以一笔画出来,那么应该如何画?有没有对一切可一笔画图形的通用解法?下面我们将这个问题抽象成一般问题,然后从图论角度寻找上述疑问的答案。图论中的一些概念因为在下文论述过程中需要用到一些图论的基本概念,为了照顾在这方面不熟悉的朋友,我先将要用到的定义和概念列出来,如果您对图论的基本内容已经了然于胸,可以跳过这一节。另外如不做特殊说明,下文所有的“图”都默认指“无向图”,本文的讨论不涉及“有向图”。简单图——一个简单图可表示为G=(V, E),其中V是顶点集合,其中每个元素是图的一个顶点;E是边集合,其中每一个的元素是一个顶点对(a, b),其中a和b均属于V,这个顶点对表示顶点a和b间有一条边相连。多重图——简单图不允许同一组顶点对在E中出现两次,即一对顶点间最多只有一条边。如果在简单图的基础上允许任一组顶点对间有任意条边,则简单图变为多重图。一般图——如果在多重图的基础上允许自关联边,即允许(a, a)这样的顶点对出现在E中,则这种图叫一般图。(我们后续所有讨论的对象都是一般图,如不做特殊说明,下文所有的“图”均指一般图)顶点的度——一个顶点的度是这个顶点所连接的边的条数。连通图——如果一个图任意两个顶点之间都存在由边组成的通路,则这种图叫连通图。(我们后续所有讨论的对象都是连通图,如不做特殊说明,下文所有的“图”均指无向一般连通图)途径——在一个图G中,{x1, x2}, {x2, x3}, …, {xm-1, xm}叫做G的一个途径,如果x1和xm为同一顶点,则说这个途径是闭的,否则说这个途径是开的。迹——如果一个途径中没有重复的边,则这个途径叫做“迹”。欧拉迹——如果图G的一个迹包含了G所有的边,则这个迹叫做“欧拉迹”。一笔画问题的抽象有了上面的定义,我们就可以用数学语言描述一笔画问题了:所谓一笔画问题,就是给定一个无向一般连通图,这个图存在欧拉迹的充分必要条件是什么?如果存在欧拉迹,如何求欧拉迹?这个问题很庞大,我们化整为零,分几步去讨论。另外,为了避免枯燥无味,我将不会从绝对严格的数理层面去做推理和证明,而是用一些直观的启发式方法,尽量让每位朋友都能读懂。问题一:图G存在欧拉迹的必要条件是什么?首先,我们来推导G存在欧拉迹的必要条件。虽然满足必要条件不能充分证明G一定存在欧拉迹,但是不满足必要条件就一定不存在欧拉迹。所以搞清这个问题,可以用来帮助我们判断出显然不能一笔画出的图。欧拉迹分为开欧拉迹和闭欧拉迹,我们先讨论开欧拉迹的情况。现已知图G存在开欧拉迹(等价于存在一笔画画法,并且这种画法在完成时不会回到起始顶点),那么可以推导出什么?现在我们这样想:设{x1, x2}, {x2, x3}, …, {xm-1, xm}是G的一条开欧拉迹,那么{x1, x2, …, xm}是这条欧拉迹所经过的顶点的序列。需要注意,这里除了x1和xm一定不是同一顶点,其它很多顶点可能是相同的。因为欧拉迹只要求每个边出现且仅出现一次,但不限制同一顶点出现几次。例如下图:其中{a, b}, {b, c}, {c, a}, {a, d}, {d, e}, {e, c}是一个开欧拉迹,顶点序列为{a, b, c, a,d, e, c}。现在我们这么考虑这个问题,对于某一顶点x,I(x)表示欧拉迹中进入x的次数,即走整个欧拉迹过程中从x以外的顶点进入x顶点的次数,O(x),表示离开x的次数,即

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档