理解NP问题

334 阅读1分钟

NP问题

在计算复杂性理论中,NP(nondeterministic polynomial time)是一种用于对决定性问题进行分类的复杂性类。 对于一组决定性问题,答案为“是”的实例可在多项式时间内通过确定性图灵机验证,这组决定性问题就叫NP。

NP的等效定义是由非确定性图灵机在多项式时间内可解决的一组决定性问题。 该定义是缩写NP的基础; “不确定的多项式时间。” 这两个定义是等效的,因为基于图灵机的算法由两个阶段组成,其中第一阶段包括对解决方案的猜测,它以非确定性的方式生成,而第二阶段包括确定性算法, 验证猜测是否可以解决问题。

NP问题的发散理解

P问题:多项式时间内可以解决的问题

NP问题:非确定性图灵机在多项式时间内可以解决的问题

NP完全问题:能够完全模拟复杂性类(即所有NP)的问题,NP完全问题既属于NP问题,又属于NP难问题。

NP难问题:1)NP完全问题。2)比NP完全问题还难的问题

NP问题相互关系

参考资料:
[1]zhuanlan.zhihu.com/p/73953567
[2]en.wikipedia.org/wiki/NP_(co…