在网上看到的一个十分简洁直观的证明,就忍不住想记录下来。

这里写图片描述
在介绍这个证明之前,让我们先来回顾一下什么是Euler公式。Euler公式是说,在一个由若干顶点和它们之间的一些不相交的边所组成的图中,等式V+F=E+2总成立,其中V表示顶点个数,E表示总的边数,F表示这个图分割出来的区域个数(包括一个“外部区域”,例如一个圆把平面分割为两个区域)。如图1,这个图共有6个顶点、10条边和6个区域,可以看到6+6=10+2是成立的。为了证明这个结论,考虑这个图的任意一个生成树(图1中加粗了的边)。再考虑这个图的“对偶图”:新图的每个顶点代表原图的一个区域,原图的两个区域相邻则在新图上的两个对应顶点之间连一条边(图2中的虚线部分)。接下来,我们找出原图中那些不属于生成树的边界线,把它们在新图中所对应的边加粗(图2中的加粗虚线)。容易看出,加粗的虚线是连通的,因为原图的粗线条是一棵生成树,它没有隔离出任何一块区域;同时呢,加粗虚线是没有环的,否则它将把某个原图的顶点包起来,从而原图中的加粗线条就不可能是生成树了。只需要注意到一棵树的顶点数等于边数加一,我们的结论就直接出来了:原图的顶点数就是Euler公式中的V,它等于原图生成树的边数加一;新图的顶点数就是Euler公式中的F,它等于新生成树的边数加一;而两棵生成树的边数总和正好就是原图中的E。于是呢,我们就得到了V+F=E+2。

Logo

助力广东及东莞地区开发者,代码托管、在线学习与竞赛、技术交流与分享、资源共享、职业发展,成为松山湖开发者首选的工作与学习平台

更多推荐