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问题的主要内容,如果未能解决你的问题,请参考以下文章

3分钟读懂P问题与NP问题

机器学习周志华p=np是啥意思

算法概述-第二节:NP完全性理论

P类问题,NP,NPC,HPHard,coNP,NPI问题 的简单认识

三分钟读懂朴素贝叶斯算法

三分钟读懂BGP中RD与RT