NP-Complete与NP-Hard相比如何?

时间:2016-12-08 22:51:11

标签: np

据我所知:

NP是易于解决和验证的问题(即:乘法)

NP-Hard是难以解决但易于验证(分解)的问题

NP-Complete是什么?我在网上找到的答案说它几乎像NP-hard,但我在区分这两者时遇到了麻烦。

相关:NP-Complete VS NP-Hard

2 个答案:

答案 0 :(得分:1)

NP-complete问题是决策问题,属于NP(NP中的每个问题在多项式时间内都可以reduced,但我猜您已经在网上看到了这些细节。

NP-hard是NP中的任何问题都可以减少的问题,但不一定属于NP或是决策问题。

显然,每个NP完全问题也是NP难的(根据NP-hard的定义)。相反的情况并非如此,存在NP难的但不属于NP的问题。

例如,查找SAT实例(#SAT)的所有解的计数是NP难的,但不属于NP完全类,至少因为它不是决策问题而且因此不属于NP。

另一方面,SAT,决定满意解的计数是否大于零的问题属于NP,并且NP中的每个问题都可以减少到它,因此它是NP完全的。< / p>

注意,NP中的每个问题都可以简化为(#SAT)(因为SAT可以简化为#SAT,只需找到一个计数,如果非零,则输出true)。它至少像SAT一样“难”;这就是NP-hard这个名字背后的直觉。

我还想指出一个包含更多细节的优秀而详细的answer

答案 1 :(得分:0)

当NP和NP-hard都存在时,问题是NP完全的

如果出现以下情况,决策问题B是NP完全的:

1- B在NP中。

2- NP中的每个问题都可以在多项式时间内简化为B. (NP-硬)