3分钟读懂P问题与NP问题
Posted N-Paradigm
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3分钟读懂P问题与NP问题相关的知识,希望对你有一定的参考价值。
之前也读过P问题与NP问题相关的文章,但是没有能够理解清楚(还是自己的理解能力与知识积累比较差)现在重新梳理一下。
P问题
P :Polynomial 多项式的意思。
能够在多项式时间内解决的问题。
NP问题
NP:Nondeterministic Polynomial 非确定性多项式问题。注意:不是Non-polynomial(非多项式问题)。
能够在多项式时间内验证(是否正确)的问题。
P与NP的关系
显然P问题一定能够在多项式时间下验证其结果所以P问题是NP问题。同时P问题是能够在多项式时间内解决的问题。所以P问题是NP问题中较为简单的一类。
P = NP ?
那么现在我们知道我们所有讨论的问题都是NP的问题,同时我们知道在解决一个问题的同时算法的好坏不同,他们的时间复杂度也会不同。那么是否存在一种算法可以将非P问题转化成P问题呢?如果可以那么P问题与NP问题就等价了(P = NP)。比如分解质因数的问题后来被证明是一个P问题。但是现在数学界任然没有明确的答案。
NPC问题
NPC:NP-Complete NP完全问题。
特别的,在NP问题中有一类问题显然要难于P问题(我的理解是NP里面最难的问题),同时如果能够将这一类问题化简成一个P问题我们就能够说P = NP(我们将老大都搞定了,小弟还怕啥!)。我们把这一类最难的NP问题称作为NPC问题。
对于计算复杂度至少是NP完全(NP-Complete)甚至更大的问题,我们称它为NP困难(NP-Hard)问题。
一些补充
证明P = NP这个问题的本身也是一个NPC问题。
以上是关于3分钟读懂P问题与NP问题的主要内容,如果未能解决你的问题,请参考以下文章