NP完全问题(NPC问题)概述
P和NP对于一个问题,如果存在一个图灵机,对这个问题的任何实例,都能给出回答,那么这个问题就称作可解的;如果存在一个图灵机,又存在一介多项式P,在给定问题的实例后(设n是给定实例在0、1编码下的长度),这个图灵机能在P(n)步内给出回答,那么该问题称作多项式时间可解的。
图灵机可分为确定型和非确定型。确定型图灵机在多项式时间内可解决的全部问题类记作 P。非确定型图灵机在多项式时间内可解决的全部问题类,记作NP。由于确定型机器是非确定型机器的特殊情形,故P=NP。有趣的是相反的问题:NP=P?这就是著名的“NP=?P问题”。许多人猜测NP≠P,即在NP中有不是多项式时间可解的问题。在直觉上如果这种问题存在的话,它就是NP中“最难的”问题。NP完全问题就是NP中最难问题的一种形式化。
P类问题(多项式问题)
P类问题:所有可以在
多项式时间内求解的判定问题构成P类问题。
·
判定问题:判断是否有一种能够解决某一类问题的能行算法的研究课题。
NP类问题(多项式非确定性问题)
NP类问题:所有的
非确定性多项式时间可解的判定问题构成NP类问题。
·
非确定性算法问题:非确定性算法将问题分解成猜测和验证两个阶段。
- 算法的猜测阶段是非确定性的,算法的验证阶段是确定性的,它验证猜测阶段给出解的正确性。
- 设算法A是解一个判定问题Q的非确定性算法,如果A的验证阶段能在多项式时间内完成,则称A是一个
多项式时间非确定性算法。- 有些计算

NP完全问题探讨了在计算机科学中一些最复杂的决策问题。P类问题可在多项式时间内解决,而NP问题虽然可能在非确定性多项式时间内验证解,但找到解可能需要更长时间。NPC问题则是NP中最复杂的问题,若其中之一能快速解决,所有NP问题都将变得简单。著名的NP=P?问题至今未解,其解答将深刻影响计算复杂性理论。
最低0.47元/天 解锁文章
875

被折叠的 条评论
为什么被折叠?



