无向哈密顿图回路Dirac 定理证明和竞赛图为哈密顿通路的证明过程

8.3 Dirac定理(1952) 介绍了狄拉克定理,并详细证明了狄拉克定理。 阅读详情

Dirac 定理: 设一个无向图中有 N 个节点,若所有节点的度数都大于等于 N/2,则汉密尔顿回路一定存在。注意,“N/2” 中的除法不是整除,而是实数除法。如果 N 是偶数,当然没有歧义;如果 N 是奇数,则该条件中的 “N/2” 等价于 “⌈N/2⌉”。


网上已经有证明的方法,比如:http://blog.youkuaiyun.com/weiguang_123/article/details/7830047

而我想从自己的理解用反证法来证明一下:


我们先假设N为偶数,如果偶数成立,那当为奇数的时候很明显(边 / 点)的值更大出现回路的可能性更大(这只是我的一种理解方式,其实也可以按照偶数的方式证明的)

一:首先可以证明图一定是连通的:

前提:设 d(v) 表示节点 v 的度数。对于任意两个节点 u、 v,若它们不相邻,则可能和它们相邻的节点共有 N - 2 个,而 d(u) + d(v) ≥ N/2 + N/2 ≥ N。

1:假设u和v不连通

2:则尽量使得u和v的度数连向不同的点(即尽量别出现某点同时和u,v点同时相连),那么将有(N - 2)/ 2的点和u连,(N - 2)/ 2的点和v连;

而d(u) = N / 2   = (N - 2) / 2 + 1;所以u至少还得连接一个已经被v连接的点,

3:存在一个点同时和u,v连接,那么u,v可达;

所以这样u和v就能通过这个点连通了。(同理:v会和已经被u连接好的点连接)


二:现在证明存在一个连接所有N个点的回路:

步骤1.先证明存在k(k <= N)个点的的哈密顿回路。

(1)任意找两个相邻的节点 S 和 T,在它们基础上扩展出一条尽量长的没有重复节点的路径。也就是说,如果 S 与节点 v 相邻,而且 v 不在路径 S → T 上,则可以把该路径变成 v → S → T,然后 v 成为新的 S。从 S 和 T 分别向两头扩展,直到无法扩为止,即所有与 S 或 T 相邻的节点都在路径 S → T 上。此时这条路径的点数为k 个。

(2)而 d(S) + d(T) ≥ N/2 + N/2 ≥ N >= k;只要证明S到T的路径上存在点vi和T相连,vj和S相连(i < j)那么i到j路径任意相连两点都能作为回路的始末点。

证明如下:


【1】假设与S相连的都在编号为2到k/2,T相连的是k/2到k - 1,这样就能保证不会存在点(i < j)vi和T相连,vj和S相连

【2】但是这样和S的度数最多为:k/2 - 1 <= N / 2 - 1,则d(S) <= N / 2 - 1和d(S) >= N / 2矛盾。

【3】所以必须和S相连的会有一个点大于k/2,证明完毕。


if(k = N)证明完毕;

else 跳到步骤2;

步骤2:

(1)由步骤1得到k个点的哈密顿回路。

(2)当存在第k+1点即不和S相连,又不和T相连,则必定和S到T间的点Vi相连,否则不连通,这样就可以断开k个点的回路Vi附近的边,形成新的S->T的路径,之后可以回到步骤1,直到k = N。



竞赛图:每对顶点之间都有一条边相连的有向图称为竞赛图

证明:n(n>=2)阶竞赛图一定存在哈密顿通路


归纳法:假设当1到k个点已经为哈密顿通路1-> 2 -> ....->k,再把Vk+1归并进去:

1:当假k个点中有相邻的两个点Vi->Vi + 1,出现Vi -> Vk+1,Vk+1 -> Vi+1,则Vk+1直接插入Vi->Vi+1

2:当假k个点中有相邻的两个点Vi->Vi + 1,出现Vi -> Vk+1,Vi+1 ->Vk+1,当往右追溯到k的话如果一直都是指向Vk+1的话,那必然出现Vk->Vk+1

否则会出现1的情况。

3:当假k个点中有相邻的两个点Vi->Vi + 1,出现 Vk+1  -> Vi,那就往左追溯到1,如果一直Vk+1指向vj(1 <= j <= i)的话,那必然会出现Vk+1 -> V1

否则会出现1的情况。




图论的证明套路和图论之美 图论之最 图论常用奇技淫巧 最短/最长路: 不含奇圈⇒\Rightarrow⇒二部图:取最短的路。还有一个技巧:两条路必有分离的点,取最后一个分离的点 极大极小取法 Euler图的证明 ​ S={G∣G连通且无奇度顶点,G不是Euler图}S=\{G|G连通且无奇度顶点,G不是\text{Euler图}\}S={G∣G连通且无奇度顶点,G不是Euler图} 取出边... 阅读详情

相关推荐

任意竞赛图都有哈密顿path(A Tournament has a Hamiltonian path)

设G是竞赛图,即完全图的一个定向。则G必有哈密顿path. 证明: 反证。设n=|V|, 且P={1,2,3,…,k}(k<n)P=\{1,2,3,\dots,k\}(k<n)是G中的最长path. 则对任取的a∉Pa\notin P, 我们有下图 如果a和1a\textrm{和}1之间的边为(a,1)(a,1),那么把 aa 添加进P的开头就是一条比P更长的path,这样矛盾。同理

unsolvedmys的博客 6462

哈密顿路问题

对于一个图中是否存在一条哈密顿路,没有可靠的充分必要条件(貌似邻接矩阵恒式可以?),因此求哈密顿路是一个NP问题,一般要使用搜索和状压dp求解,但汉密尔顿回路的存在有许多充分条件,即当图满足某些特定性质的时候,汉密尔顿回路一定存在,而且可以根据一些算法构造出来。 1.Dirac定理:设一个无向图中有 N 个节点,若所有节点的度数都大于等于 N/2,则汉密尔顿回路一定存在。 (“N/2” 中的除

新博客地址:sensirly.github.io 3694

在 Dify 平台部署一个 知识库问答(KBQA) 工作流

加强检索约束,Prompt 加限制(“仅基于知识库回答”):启用缓存,使用轻量级 LLM(如 Mistral-7B)(OpenAI Embedding、M3E、BGE等)(支持 PDF/TXT/Markdown/Word)(GPU/CPU 资源,用于向量数据库和模型推理)企业内部文档(PDF/Word/Excel)网页爬取数据(Markdown/HTML)分块大小(太小→信息碎片化,太大→噪声多)相似度阈值(太高→漏检,太低→噪声多)(是否返回正确文档)结构化数据(数据库/API)

井底小蛙的博客 1520

King Arthur's Knights 【HDU - 4337】【哈密顿回路性质Dirac定理】

题目链接 一个无向图中有N个顶点,若所有顶点的度数大于等于N/2,则哈密顿回路一定存在.(N/2指的是⌈N/2⌉,向上取整),用 ——这就是Dirac定理。 在Dirac定理的前提下构造哈密顿回路 过程:   1:任意找两个相邻的节点S和T,在其基础上扩展出一条尽量长的没有重复结点的路径.即如果S与结点v相邻,而且v不在路径S -> T上,则可以把该路径变成v -> S -&...

既然弱小,就只顾变强就是了 949

90nm CMOS工艺下6μW超低功耗LDO设计实战:从原理图到版图全解析

本文详细解析了在90nm CMOS工艺下设计一款静态功耗仅为6μW的超低功耗LDO(低压差线性稳压器)的全过程。文章深入探讨了如何通过改进型翻转电压跟随器(FVF)架构实现无输出电容设计,在满足极低功耗和芯片面积高效(chip-area-efficient)要求的同时,确保环路稳定性与快速瞬态响应,为物联网、可穿戴设备等应用提供关键电源管理解决方案。

weixin_29196613的博客 277

ptrade量化策略之ST股弱转强,回测年化115%

本策略的核心是精选ST股票,国九条过滤,防止直接暴雷退市,只做ST股票的弱转强

qq_29301281的博客 1788

哈密顿图 哈密顿回路 哈密顿通路(Hamilton)

概念:   哈密顿图:图G的一个回路,若它通过图的每一个节点一次,且仅一次,(那么,问题来了,既然要回到起始点,是不是应该说除了起点以外的点通过一次且仅一次,而起点这个点,作为哈密顿回路的时候需要两次到达)就是哈密顿回路.存在哈密顿回路的图就是哈密顿图.哈密顿图就是从一点出发,经过所有的必须且只能一次,最终回到起点的路径.图中有的边可以不经过,但是不会有边被经过两次.   与欧拉图的区别:欧拉...

既然弱小,就只顾变强就是了 8887

数学建模学习(78):多输入多输出回归预测模型(结合XGBoost实现)

多输入多输出回归预测问题求解

全栈川川 8131

哈密顿图 哈密顿回路 哈密顿通路(Hamilton)

本文链接:http://www.cnblogs.com/Ash-ly/p/5452580.html 概念:   哈密顿图:图G的一个回路,若它通过图的每一个节点一次,且仅一次,就是哈密顿回路.存在哈密顿回路的图就是哈密顿图.哈密顿图就是从一点出发,经过所有的必须且只能一次,最终回到起点的路径.图中有的边可以不经过,但是不会有边被经过两次.   与欧拉图的区别:欧拉图讨论的实际上是图...

dimaishu7553的博客 2471

Office系列完全干净卸载工具合集(最全)

使用 Microsoft Fix it 卸载 Microsoft Office 套件 一、Windows 7、Windows Vista或Windows XP下卸载Office 1.MicrosoftEasyFix50416 工具用来卸载office 2003 MicrosoftEasyFix50416_Office2003.msi 2.MicrosoftEasyFix50154 工具用来卸载office 2007 MicrosoftEasyFix50154_Office2007.msi 3.Microso

业精于勤,荒于嬉 3万+

风机叶片小规模振动监测数据集--读取测试

ETH风电叶片缺陷数据集–读取测试 数据简介 提示:这里可以添加本文要记录的大概内容: 结构健康监测是保障重要机电设备、建筑设施健康的重要技术手段。 一、lvm_read包安装 示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务

cnjs1994的博客 2851

3 遍历—哈密顿通路/回路/竞赛图

遍历

weixin_45034895的博客 1386

scratch绘制四个三角形 2024年6月中国电子学会 图形化编程 scratch编程等级考试二级真题和答案解析

​ scratch绘制四个三角形 一、题目要求 2024年6月电子学会图形化编程Scratch等级考试二级真题 1、准备工作 1.保留默认角色小猫; 2.添加背景Stars。 2、功能实现 1 .隐藏角色小猫,设置画笔裙始位置为(0,0),画笔颜色为黄色,画笔的粗细为5; 2. 点击绿旗,绘制如下图所示图形,三角形的边长为50。 二、案例分析 1、角色分析 角色:小猫 2、背景分析 背景:Stars背景 3、前期准备 1. 保留默认的小猫不变 ​

青少年编程学习指导 1717

图论 —— 图的遍历 —— 哈密顿问题

【基本概念】 哈密尔顿通路:经过图中每个结点且仅经过一次的通路。 哈密尔顿回路:经过图中每个结点且仅经过一次的回路。 哈密尔顿图:存在哈密尔顿回路的图。 竞赛图:每对顶点之间都有一条边相连的有向图,n 个顶点的竞赛图称为 n 阶竞赛图。 与欧拉回路的对比:欧拉回路是指不重复地走过所有路径的回路;哈密尔顿回路是指不重复地走过所有点并且最后回到起点的回路。 【判定】 1.哈密尔顿通路的判定...

Alex_McAvoy的博客 9639

【用ArcGIS制作一张好看的中国月度气温图

要最后选中那个事先调整好的那个数据框,这样其他两个数据框才能和其大小一致。

J_Giser的博客 1017

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

哈密顿回路算法详解

【转】哈密顿回路 原文链接:http://www.cnblogs.com/Ash-ly/p/5452580.html 概念:   哈密顿图:图G的一个回路,若它通过图的每一个节点一次,且仅一次,就是哈密顿回路.存在哈密顿回路的图就是哈密顿图.哈密顿图就是从一点出发,经过所有的必须且只能一次,最终回到起点的路径.图中有的边可以不经过,但是不会有边被经过两次.   与欧拉图的...

weixin_30730151的博客 5074

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

知识点 - 哈密顿图

知识点 - 哈密顿图 解决问题类型: 对于顶点个数大于2的图,如果图中任意两点度的和大于或等于顶点总数,那这个图一定是哈密顿图。闭合的哈密顿路径称作哈密顿圈,含有图中所有顶点的路径称作哈密顿路径。 哈密顿图:图G的一个回路,若它通过图的每一个节点一次,且仅一次,就是哈密顿回路.存在哈密顿回路的图就是哈密顿图.哈密顿图就是从一点出发,经过所有的必须且只能一次,最终回到起点的路径.图中有的边可以不经过...

qq_41848675的博客 8491

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

哈密顿回路/路径学习

参考博客:https://blog.youkuaiyun.com/zhouzi2018/article/details/81278942 哈密顿图 哈密顿图(哈密尔顿图)(英语:Hamiltonian graph,或Traceable graph)是一个无向图,由天文学家哈密顿提出,由指定的起点前往指定的终点,途中经过所有其他节点且只经过一次。在图论中是指含有哈密顿回路的图,闭合的哈密顿路径称作哈密顿回...

birdmanqin的博客 3815

哈密顿路径 && 竞赛图

 哈密顿图:图G的一个回路,若它通过图的每一个节点一次,且仅一次,就是哈密顿回路.存在哈密顿回路的图就是哈密顿图.哈密顿图就是从一点出发,经过所有的必须且只能一次,最终回到起点的路径.  图中有边可以不经过,但不会有边被经过两次. 竞赛图(哈密顿通路):有向完全图 任意两个不同的点之间恰有一条连边   N(N&amp;gt;=2)阶竞赛图一点存在哈密顿通路. 一:Dirac定理(充分条件...

Dave_lzw的博客 3716

哈密顿路径

这个“哈密瓜路径”网上查了好久没搞明白,我这个的代码无奈定义了4个节点和5条边,将就混过课程设计课。 放代码和结果从我做起!欢迎大家留言! 1. 问题描述 在图G中找出一条包含所有顶点的简单路径,该路径称为哈密顿路径。 2. 基本要求 (1)图G是非完全有向图,且图G不一定存在哈密顿路径; (2)设计算法判断图G是否存在哈密顿路径,如果存在,输出一条哈密顿路径即可; (3)分析算法...

鸽子的博客 1万+

哈密顿路径状压DP算法C++实现

5:如果当前ans[]中元素的个数等于n,算法结束,ans[]中保存了哈密顿回路(可看情况是否加入点s).否则,如果s与t连通,但是ans[]中的元素的个数小于n,则遍历ans[],寻找点ans[i],使得ans[i]与ans[]外的一点(j)相连,则令s=ans[i - 1],t = j,将ans[]中s到ans[i - 1]部分的ans[]倒置,将ans[]中的ans[i]到t的部分倒置,将点j加入到ans[]的尾部,转步骤2.我们设dp[i][j] 表示当前第i个状态且正在访问第j个节点的最小花费。

程序猿老樊的博客 1442

哈密顿回路

本文作者链接:http://www.cnblogs.com/Ash-ly/p/5452580.html 概念:   哈密顿图:图G的一个回路,若它通过图的每一个节点一次,且仅一次,就是哈密顿回路.存在哈密顿回路的图就是哈密顿图.哈密顿图就是从一点出发,经过所有的必须且只能一次,最终回到起点的路径.图中有的边可以不经过,但是不会有边被经过两次.   与欧拉图的区别:欧拉图讨论的实际上是图上关于...

GYH0730的博客 1851

竞赛图找哈密尔顿回路(hdu3414)

下面内容转自http://blog.sina.com.cn/s/blog_8d84b9240101fdwj.html: 对于一个图中是否存在一条哈密顿路,没有可靠的充分必要条件(貌似邻接矩阵恒式可以?),因此求哈密顿路是一个NP问题,一般要使用搜索和状压dp求解,但汉密尔顿回路的存在有许多充分条件,即当图满足某些特定性质的时候,汉密尔顿回路一定存在,而且可以根据一些算法构造出来。

龙崎的专栏 5294
上一篇: Ubuntu 下gvim/vim clang_complete自动补全安装
下一篇: POJ 2104(K-th Number-区间第k大-主席树)
SprintfWater
博客等级 码龄15年 242粉丝 139原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值