zoukankan      html  css  js  c++  java
  • P&NP&NPC

    1.P类问题:如果一个问题可以找到一个能在多项式的时间里解决它的算法。
    2.NP问题:指可以在多项式的时间里验证一个解的问题。The halting Problem是NP问题,所有的P类问题都是NP问题。

    3.NPC问题:(1)它是一个NP问题;(2)所有的NP问题都能归约到它(例:逻辑电路问题);既然所有的NP问题都能归约成NPC问题,那么只要任意一个NPC问题找到了一个多项式的算法,那么所有的NP问题都能用这个算法解决了,NP也就等于P了。因此,说:“正是NPC问题的存在,使人们相信P不等于NP。”NPC问题目前没有多项式的有效算法,只能用指数级或阶乘级复杂度的搜索。

    4.NP-Hard问题:所有的NP问题都能归约到它,但它不一定是一个NP问题。

    5.逻辑电路问题:给定一个逻辑电路,问是否存在一种输入使输出为TRUE。证明它是NPC问题:(1)它属于NP问题。(2)任意一个NP问题的输入和输出都可以转换成逻辑电路的输入和输出(证明过程很复杂)。

    6.哈密顿回路,TSP问题都是NPC问题。

    7.证明某种语言L是NPC的一种方法:

    1)证明L属于NP

    2)选取一个已知的NP完全语言L1

    3)描述一种算法来计算一个函数f,它把L1中的每个实例x属于{0,1}*都映射成为L中的一个实例f(x)

    4)证明对所有x属于{0,1}*,函数f满足x属于L1当且仅当f(x)属于L

    5)证明计算函数f的算法具有多项式运行时间。

  • 相关阅读:
    Nginx浅谈
    MySQL 规范
    使用nginx反向代理实现隐藏端口号
    -bash: /etc/profile: line 11: syntax error near unexpected token `$'{ ''报错问题解决
    为什么禁止在 foreach 循环里进行元素的 remove/add 操作
    Java中String字符串常量池
    前端学习路径
    Linux关闭防火墙命令
    CXF实现webService服务
    Jquery Ajax 的例子。
  • 原文地址:https://www.cnblogs.com/pandy/p/1937373.html
Copyright © 2011-2022 走看看