NP理论(P、NP、NPC和NP-hard)

P问题:可以在以多项式表达的时间内求出确切解的问题,也就是说它的计算复杂度是一个多项式。我们通常用的O(n),O(logn),O(n^2)等等类似的都是这类问题。


NP问题:英文是non-deterministic polynomial,是多项式时间可以验证的问题。最初是在非确定图灵机上,如果一个问题存在一个解,那么就先猜它,一定可以在多项式时间内猜到这个解。(关键是就是不判定这个问题到底有没有解)

    p?=NP 目前还没有被证实。也就是还不知道P和NP的关系,但是可以确定的是P属于NP。

 

NP-hard问题:是指从算法角度比NP还难的问题,指的是所有的NP问题可以通过某个多项式时间的函数规约到这类问题。就是说如果L’是NP的,且L'《pL,p是多项式表达式,那么L就是NP-hard问题。NP-hard问题不一定是NP问题,因为总有一些NP-hard问题无法在多项式时间判断一个解是否可行。


NP-complete问题:是NP问题中最难的问题。因为NP也包含P呀,所以NP问题中有的简单,在多项式时间内就可以确定,有的相对难,只能验证。所以要区分对待一下,就把那些最难的挑出来,就是NP-complete问题了。


P问题就是在多项式时间内可以解决的问题
NP问题就是可以在多项式时间内对一个给定的解进行验证,并给出其正确性的问题
NPC问题就是可以在多项式时间内对这个问题所有可能的解进行验证,并给出其正确性的问题
                     


  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值