图论导引 - 第三章 第三节:哈密顿图 - 11/11

news/2024/11/14 10:44:39/

哈密顿图 Hamiltonian Graphs

定义

欧拉图:给定的连通图 G G G 是否存在一条包含其每一条闭迹

哈密顿图(Hamiltonian graph):图中存在一条闭迹恰好一次经过 G G G 的每一个顶点

  • 这样的迹一定是一个,除了当 G G G 是图 N 1 N_1 N1(只有 1 个顶点的零图)时。
  • 这样的圈是一个哈密顿圈(Hamiltonian cycle),而 G G G​ 是一个哈密顿图。

半哈密顿图:如果一个非哈密顿图 G G G 存在一条经过每一个顶点的路径,那么 G G G 是半哈密顿图。

  • 不一定封闭!

在这里插入图片描述

哈密顿图的判定

如何判定一个图是不是哈密顿图?

其中最著名的可能是由 G.A.Dirac 提出的,被称为狄拉克定理(Dirac’s theorem)。我们从 O.Ore(奥勒)的一个更一般的结果推导出狄拉克定理。奥勒定理(Ore’s Theorem)是图论中的一个经典定理,它给出了图是哈密顿图的一个充分条件。

定理7.1(奥勒,1960):设 G G G 是一个具有 n n n n ≥ 3 n\geq3 n3)个顶点的简单图,如果对于每一对不相邻的顶点 v v v w w w,都有 d e g ( v ) + d e g ( w ) ≥ n deg(v)+deg(w)\geq n deg(v)+deg(w)n,那么 G G G​ 是哈密顿图。

证明:

  • 反证法假设:假设存在一个不包含哈密顿圈的非哈密顿图 G G G,它满足对于每一对非相邻顶点 v v v w w w,都有 deg ⁡ ( v ) + deg ⁡ ( w ) ≥ n \deg(v) + \deg(w) \geq n deg(v)+deg(w)n

  • 最长路径的存在性:在 G G G 中,我们可以找到一个最长的路径 P P P。这条路径可能不包含 G G G​ 的所有顶点,但包含尽可能多的顶点。

    • 设该路径 P P P 的顶点序列为 v 1 , v 2 , … , v k v_1, v_2, \dots, v_k v1,v2,,vk,其中路径的顶点数 k < n k < n k<n,一定是小于 n n n,否则就是半哈密顿图。
  • 路径的性质:由于 P P P 是最长路径,故两个端点 v 1 v_1 v1 v k v_k vk 一定不相邻,否则我们可以通过加入边 v k v 1 v_kv_1 vkv1 P P P 封闭成一个圈,并且尝试在该圈上找到更长的路径,这与假设 P P P 是最长路径矛盾。

  • 非相邻顶点的度数和:由于 v 1 v_1 v1 v k v_k vk 不相邻,根据假设条件,我们有 deg ⁡ ( v 1 ) + deg ⁡ ( v k ) ≥ n \deg(v_1) + \deg(v_k) \geq n deg(v1)+deg(vk)n说明 v 1 v_1 v1 v k v_k vk 总共至少与 n n n​ 个顶点相连

    • 由于 v 1 v_1 v1 v k v_k vk 都位于路径 P P P 的端点,且 P P P 是最长路径,说明 v 1 v_1 v1 v k v_k vk 不可能和路径外的其他 n − k n-k nk 个顶点相连
    • v 1 v_1 v1 v k v_k vk 又总共至少与 n n n 个顶点相连,说明 v 1 v_1 v1 v k v_k vk 只能和路径 P P P 中的顶点相连,即度数不会超过 n − k + 1 n-k+1 nk+1
    • 同时, v 1 v_1 v1 v k v_k vk 至少各自与 P P P 中的一个其他顶点相连,不会存在其中一个端点度为 1 的情况。
      • 假如 v 1 v_1 v1 度为 1,那么 v k v_k vk 的度为 n − 1 n-1 n1,这与 v k v_k vk 的度不会超过 n − k + 1 n-k+1 nk+1 矛盾。
  • 路径 P P P 中必存在圈:综上所述,存在至少一个顶点 v i v_i vi 1 < i < n − 1 1<i<n-1 1<i<n1)在 P P P 上与 v 1 v_1 v1 相邻,并且 v i − 1 v_{i−1} vi1 v k v_k vk 相邻。这意味着我们可以将 v 1 v_1 v1 v k v_k vk 连接起来,形成一个圈: v 1 → v 2 → ⋯ → v i − 1 → v k → v k − 1 → ⋯ → v i + 1 → v i → v 1 v_1→v_2→\cdots→v_{i - 1}→v_k→v_{k - 1}→\cdots→v_{i + 1}→v_i→v_1 v1v2vi1vkvk1vi+1viv1​(如图 7.5 所示)。

    在这里插入图片描述

  • 拓展路径构成矛盾:最长路径 P P P 中形成了圈,设 u u u 是一个不在 P P P 中的顶点,考虑 u u u 与路径 P P P 上顶点的连接情况。

    • 情况 1:如果 u u u v 1 v_1 v1 v k v_k vk 中的一个顶点相邻。
      • 这样就可以将 u u u 加入到路径 P P P 中,使得 P P P 变得更长,从而与 P P P 是最长路径的假设矛盾。
    • 情况 2:如果 u u u v 1 v_1 v1 v k v_k vk 都不相邻。
      • 根据假设条件,对于不相邻的 v 1 v_1 v1​ 和 u u u,有 d e g ( v 1 ) + deg ⁡ ( u ) ≥ n deg(v_1) + \deg(u) \geq n deg(v1)+deg(u)n。同理,对于不相邻的 v k v_k vk​ 和 u u u 也有 d e g ( v k ) + deg ⁡ ( u ) ≥ n deg(v_k) + \deg(u) \geq n deg(vk)+deg(u)n。因此 u u u 必然与路径 P P P 中的许多顶点相邻
      • 那么通过路径中的圈,该路径总能和顶点 u u u 相连,于是可以添加顶点 u u u 到该路径 P P P 中,形成更长的路径,这与 P P P​ 是最长路径的假设相矛盾。
  • 结论:因此,我们的假设是错误的,如果在图中对于每一对不相邻的顶点 v v v w w w,都有 d e g ( v ) + d e g ( w ) ≥ n deg(v)+deg(w)\geq n deg(v)+deg(w)n,图 G G G 中必然包含一个具有 n n n 个顶点且存在圈的路径,即哈密顿圈,图 G G G 肯定是哈密顿图。

推论7.2(狄拉克,1952):设 G G G 是一个具有 n n n n ≥ 3 n\geq3 n3)个顶点的简单图,如果对于每个顶点 v v v,都有 d e g ( v ) ≥ n / 2 deg(v)\geq n/2 deg(v)n/2,那么 G G G 是哈密顿图。

证明:这个结果直接由定理7.1得出,因为对于每一对顶点 v v v w w w,无论它们是否相邻,都有 d e g ( v ) + d e g ( w ) ≥ n deg(v)+deg(w)\geq n deg(v)+deg(w)n


http://www.ppmy.cn/news/1546625.html

相关文章

qt QKeySequence详解

1、概述 QKeySequence 是 Qt 框架中的一个类&#xff0c;用于表示和处理键盘快捷键序列。它提供了一种方便的方式来解析、存储和比较键盘快捷键&#xff0c;这些快捷键通常用于触发应用程序中的特定操作或命令。QKeySequence 支持多种格式的快捷键表示&#xff0c;包括单个按键…

6.2 对角化矩阵(2)

五、不能对角化的矩阵 假设 λ \lambda λ 是 A A A 的一个特征值&#xff0c;我们从两个方面发现这个事实&#xff1a; 特征向量&#xff08;几何的&#xff09;&#xff1a; A x λ x A\boldsymbol x\lambda\boldsymbol x Axλx 有非零解。特征值&#xff08;代数的&…

20241112-Pycharm使用托管的Anaconda的Jupyter Notebook

Pycharm使用托管的Anaconda的Jupyter Notebook 要求 不要每次使用 Pycharm 运行 Jupyter 文件时都要手动打开 Anaconda 的 Jupyter Notebook 正文 pycharm中配置好会自动安装的&#xff0c;有的要自己配置 Pycharm中配置 文件 ——> 设置 ——> 语言和框架……&am…

解决全局安装@vue/cli 后vue -V不是内部或外部命令

大家好&#xff0c;我是苏麟。 全局安装 vue cli 命令 yarn global add vue/cli 或者 npm install -g vue/cli 安装完 查看 版本 出错 找到node 选择这两个文件 复制到 node 下 找到 vue 复制到 node_modules 下 成功

vue3+vite+ts中如何动态使用import.meta.env中的变量

文章目录 1.使用场景2. 使用插件的方式1. 创建一个插件文件,根目录plugins/import-meta-env.d.ts2. 在vite.config.ts中引入3. 使用 1.使用场景 不想在使用import.meta.env的时候,还去找到变量文件去看 2. 使用插件的方式 1. 创建一个插件文件,根目录plugins/import-meta-env.…

记录 IDEA 搜索不到插件: marketplace plugins are not loaded

使用 IDEA 插件商店时, 一直加载不出来 提示: marketplace plugins are not loaded 按照网上提示, 使用代理, 依旧无法加载 最终解决方案 idea访问时, 被防火墙拦截 允许应用通过防火墙即可 全勾上即可 说明 文章转发自 博主尘下吹霜的记录 IDEA 搜索不到插件: marketplace…

前端监控与埋点 全总结

一、概念 前端埋点是指在网页或者应用程序中插入特定的代码&#xff0c;用于收集用户的行为数据并发送给服务器进行分析。这些数据可以包括用户的点击、浏览、输入等操作&#xff0c;帮助开发者了解用户的在其网站中的行为&#xff0c;从而进行针对性的优化和改进。 前端埋点…

go do sth和come do sth的区别

"Come do something" 语法结构 结构&#xff1a;主语 come 动词原形 其他成分。 用法&#xff1a;表示某人来到说话者的位置或某个地方&#xff0c;然后做某事。例句 Come play with us.&#xff08;过来和我们一起玩。&#xff09; Come help me with this.&…