几何学中的欧拉公式:V-E+F = 2,V、E、F表示简单几何体的顶点数、边数、面数。

证明:

它的证明有多种,这里呈现一种递归证法。

对于任意简单几何体(几何体的边界不是曲线),我们考察这个几何体的每个面,设这个边成一个n边形,我们从某个固定顶点开始连接其其他各个顶点,即将这个n边形从某个顶点进行了三角剖分,我们假想每个三角形是一个面(因为实际上多个三角形共面),那么能够看到,这个过程中E和F的增量是相同的,因此如果原来的几何体满足V-E+F = 2,则现在这个几何体(视每个三角形为一个面)仍然满足欧拉公式。

我们随机去掉一个面,则剖分后的几何体应满足V-E+F = 1.

现在我们考察这个去掉一个面之后被三角形剖分的几何体,对于某个三角形,考察它的三个边(每条边都是被两个三角形共享),会有如下的三种情况:

(1)一个边所在的另一个三角形的那个面是空的。

(2)两个边所在的另一个三角形的那个面是空的。

(3)三个边所在的另一个三角形的那个面是空的。

那么下面我们开始一个“掏空过程”,为了分析的方便,我们不在一片没有被“掏空”的区域的内部去“掏空”某个三角形,直到最终剩余一个三角形,即我们避免了第三种情况。

面临情况(1),我们掏空这个三角形,发现边数、面数各减1,V-E+F的值将不发生变化。

面临情况(2),我们掏空这个三角形,我们发现会出现两种情况,分为顶点数减1和不变的情况(想象一下),我们非常喜欢前面这种情况,因为这使得边数减2、顶点减1、面数减1,这会使得V-E+F不变,这十分有利于我们继续进行递归的等价转化。

那么如何应对这种情况呢?还记得我们一开始随机掏空的那个三角形么,容易看到它必然由三个三角形围起来,即分享这个被掏空的三角形的三个边的三角形,我们标号为1、2、3,而这三个三角形中间势必会夹着三个三角形,我们记为4、5、6,我们采取的策略是先掏空1、2、3,然后掏空4、5、6,这样将会保证V-E+F不变,同时我们将1、2、3、4、5、6视为第一层“堡垒”,对于第二层,想一想,是否也是相同的状况(掏空4、5、6又会得到三个情况(1)中的三角形)?这就保证了我们递归的正确性。(这里不需要考虑三角形个数余6的结果,因为这种自上而下的“掏空过程”将会杜绝情况(2)的第二种情况)

那么让我们来看看递归的最终状态,对于一个三角形,V = 3 、 F  =1  、 E = 3 ,显然有V-E+F = 1,然后回溯到先前的所有状态,可知对于任意的简单几何体,有欧拉公式成立:

V-E+F = 2.

证毕。

补充:笔者今天复习离散刚好看到了该欧拉公式在平面图中的推广形式,在这里做出补充。

通常有资料认为将几何体直接映射到平面上即可完成等价转化,但个人认为这并不严谨,主要针对弧线。

定理:设G为任意的连通的平面图,则v-e+f=2,v是G的顶点数,e是G的边数,f是G的面数。

证明:其实有点类似几何学中的欧拉公式的证明方法,这里采用归纳证明的方法。

对m进行归纳,当m = 0,显然成立。

假设边数e' = e-1时成立,即有v'-e'+f'=2.考察参数为v、e、f的G图,如果存在悬挂点v1,去掉v1,则有e' = e - 1,f=f',v' = v - 1,带入之前的假设,整理得:

v-e+f=2.

而如果G中没有悬挂点,我们去掉回路中的某个边,采取类似的思路,同样可以整理出欧拉公式。

证毕。

几何学中的欧拉公式:V-E+F = 2的更多相关文章

  1. [编程语言][java][java se]java泛型中? T K V E含义(学习)

    ? 表示不确定的java类型,类型是未知的. T  表示java类型. K V 分别代表java键值中的Key Value. E 代表Element,特性是枚举. 1.意思     jdk中的K,V, ...

  2. 统计字符串中每种字符出现的评率(HashMap中getOrDefault(K, V)方法的使用)

    为了统计字符串中每种字符出现的频率,使用HashMap这种数据结构.其中,字符作为Key,出现的频率作为Value. 基本算法为: 1. 将字符串分成字符数组 2. (1)如果HashMap中的Key ...

  3. 操作系统中的P,V操作(转)

    无论是计算机考研.计算机软件水平考试.计算机操作系统期末考试还是其他计算机岗位考试,P.V原语操作都是一个常考点.下面笔者总结了关于P.V操作的一些知识. 信号量是最早出现的用来解决进程同步与互斥问题 ...

  4. grep -v|grep -F

    cat a cat b #取b中不含1的行 b #b先和a比较,两者交集与b再取交集 b: b: b: b: b: b:22 $ grep -F a -f a b#a先和a比较,两者交集与b再取交集 ...

  5. ORACLE中dba,user,v$等开头的常用表和视图

    一.Oracle表明细及说明1.dba_开头表    dba_users           数据库用户信息    dba_segments    表段信息    dba_extents        ...

  6. django 中的聚合和分组 F查询 Q查询 事务cookies和sessions 066

    1 聚合和分组 聚合:对一些数据进行整理分析 进而得到结果(mysql中的聚合函数) 1aggregate(*args,**kwargs) : 通过对QuerySet进行计算 ,返回一个聚合值的字典. ...

  7. Linux中的System V信号量

    在进程同步,并发运行时,保证按序地访问共享资源是十分重要的.因此引入了临界区的概念,一次只能有一个线程进入临界区完成他的指令.而信号量(semaphore)的作用,类似于一个交通信号灯,它负责进程协作 ...

  8. Spring MVC中的M V C

    M→Model 模型 V→View 视图 C→Controller 控制器 也就是说一次交互由生到死(请求到相应) 需要经过 这三个层级 来完成 那么为什么这么设计 这么设计又有什么好处 我是这么认为 ...

  9. 用c#中的WebBrowser抢小米F码,抢小米手机以及自动测试实现原理

    首先是用c#中的WebBrowser控件打开登录网页,很简单,拖拽WebBrowser到Form上,然后给它的Url属性赋值.WebBrowser就会自动navigate to 这个网页. WebBr ...

随机推荐

  1. 完美解决Android完全退出程序(转)

    背景:假说有两个Activity, Activity1和Activity2, 1跳转到2,如果要在2退出程序,一般网上比较常见的说法是用 System.exit(0) 或是 android.os.Pr ...

  2. dispatch的几种队列

    dispatch的几种队列   dispatch队列的生成可以有这几种方式: 1. dispatch_queue_t queue = dispatch_queue_create("com.d ...

  3. yii columns value and type and checkbox columns

    value  I am here type  I am here checkbox columns   useage

  4. 转载:C# 中的委托

    原文地址  http://www.tracefact.net/CSharp-Programming/Delegates-and-Events-in-CSharp.aspx 感谢博主分享! 引言 委托和 ...

  5. C#之—委托

    (1)定义委托:(百度百科样例,只有写了才有收获) namespace Entrust { public delegate void GreetingDelegate(string name); // ...

  6. application/json IE 兼容问题

    由于IE系列浏览器把application/json响应视为文件,并尝试下载在网上看了一下,大致了解,只要修改返回的内容的类型(ContentType)即可解决问题. 由于ajax请求,返回类型默认就 ...

  7. android Editview中加小图标或者文字实现

    关于这个问题,如果只是加小图标的话,已经提供了很好的支持,drawableLeft属性就可以设置左边的小图标,类推,右边也可以 不过如果你要加的是文字,我找了下,没有相应的属性,我们只能通过转换思路去 ...

  8. WinForm窗体之间传值

    当程序需要将一个窗体中的一些信息传给另一个窗体并让其使用时,就需要用到这个知识点 方法一:通过接受参数的窗体的构造函数传值 例:现有Form1和Form2两个窗体,二者都包含一个文本框,Form1还包 ...

  9. 4.HTTP入门

    什么是http协议查看http协议的工具http协议内容Http请求请求行http协议版本请求资源请求方式GET方式提交POST方式提交请求头3.3 实体内容3.4 HttpServletReques ...

  10. 【USACO 1.5.4】跳棋的挑战

    [问题描述] 检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行,每列,每条对角线(包括两条主对角线的所有对角线)上都至多有一个棋子,如下例,就是一种正确的布局. 上面的布局可以用 ...