据我所知:
NP是易于解决和验证的问题(即:乘法)
NP-Hard是难以解决但易于验证(分解)的问题
NP-Complete是什么?我在网上找到的答案说它几乎像NP-hard,但我在区分这两者时遇到了麻烦。
答案 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-硬)