汉密尔顿环问题的多项式时间算法,最大度数为3,3SAT。

摘要:基于著名的旋转-扩展技术,通过创建新的概念和方法:广循环、主要段、有用的切割和插入、破坏主要段的边、主要目标哈密尔顿环、深度优先搜索树,我们为著名的NPC问题——哈密尔顿环问题开发了一个多项式时间算法。因此我们证明了NP=P。本文的关键点是:1)有两种方法可以在指数时间内得到一个哈密尔顿环:n个顶点的全排列;或者从所有k条边中选择n条边,并检查所有可能的组合。主要问题是:如何避免检查从所有边中选择n条边的所有组合。我的算法可以避免这一点。引理1和引理2非常重要。它们是我们始终可以在深度优先搜索树中得到一个好分支并得到一系列破坏边(都是坏边)的基础。非凡的见解是:破坏边、树中每个主要段同时最多包含一次,以及动态组合。困难的部分是理解如何通过动态组合构建一系列破坏边的主要段。证明逻辑是:如果图中至少有一个哈密尔顿环,我们始终可以进行有用的切割和插入,直到获得一个哈密尔顿环。有用的切割和插入的次数是多项式的。因此,如果在任何步骤中我们无法进行有用的切割和插入,这意味着图中没有哈密尔顿环。在这个版本中,我为3SAT问题添加了一个详细的多项式时间算法和证明。

作者:Lizhi Du

论文ID:1004.3702

分类:Data Structures and Algorithms

分类简称:cs.DS

提交时间:2023-08-22

PDF 下载: 英文版 中文版pdf翻译中