P, NP

  1. 多项式:axn +bxn-1+c,x的最高位为n的多项式。
  2. 时间复杂度:用来表示一个算法运行的时间效率。冒泡排序的时间复杂度为O(n2) ,取其最高次,可以看出,这是一个时间复杂度为多项式的表示方式。
  3. 排序这个大问题里,可以找到一种时间复杂度为多项式O(n2)的算法(如冒泡排序法)来求解排序问题的,⇒ 排序问题是一个有多项式时间算法的问题。
  4. P类问题:存在多项式时间算法的问题。(P:polynominal,多项式)。
    当计算机处理的数据达到100万个的时候,时间复杂度分别为O(n2) 和 O(en) 的算法,运行时间简直就是天壤之别。所以我们才要研究一个问题是否具有多项式时间的算法。
  5. NP问题:能在多项式时间内验证得出一个正确解的问题。(NP:Nondeterministic polynominal,非确定性多项式)。
    P类问题是NP类问题的子集(即存在多项式时间算法的问题,总能在多项式时间内验证它)
    不知道这个问题存不存在一个多项式时间的算法,所以叫非确定性(non-deterministic)。但是我们可以在多项式时间内验证并得出这个问题的一个正确解。
    举例说明,TSP问题:
    旅行家人品爆炸连续找到最终路径,并在多项式时间内找到了最短路径,即我们能在多项式时间内验证得到出该问题的最终解,但不确定是否存在一个多项式算法能够稳定解决这个问题⇒ TSP问题是一个NP问题。
  6. NP=P?:
    是否所有能在多项式时间内验证得出正确解的问题,都是具有多项式时间算法的问题。
  7. 简化约束:想要解决一元一次方程,只要找出解决二元一次方程的方法。在一元一次添加y,令y=0,转化为二元一次方程,用二元一次方法解决。这就是问题约化。
    同时约化具有传递性,如A约化到B,B约化到C,A就可以约化到C,同时不断约化下去,会发现,一定会存在一个最大的问题,解决了这个最大问题,所有问题都能解决。
    在NP问题中,对于同一类的所有的NP类问题,若他们都可以在多项式时间内约化成最难的一个NP类问题,若对于这个时间复杂度最高的超级NP问题能找到多项式时间算法 ⇒ 其下的所有问题都是存在多项式算法的 ⇒ NP = P。
    引出了NPC问题。
  8. NPC类问题(Nondeterminism Polynomial complete):存在这样一个NP问题,所有的NP问题都可以约化成它。
    (1)它得是一个NP问题;
    (2)所有的NP问题都可以约化到它。
  9. NP难问题(NP-hard问题):它满足NPC问题定义的第二条但不一定要满足第一条,即所有的NP问题都能约化到它,但是它不一定是一个NP问题。
    在这里插入图片描述

参考自https://blog.csdn.net/qq_21768483/article/details/80430590

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值