解决问题的不同时间复杂度级别简介

    评价一个算法的时间效率,一般使用时间复杂度。评价一个问题的难度,则使用解决此问题的最优算法的时间复杂度等级。
    等级包括:P问题,NP问题,NPC(NP-Compelete,NP完全)问题,和NPH(NP-Hard,NP难)问题
    P问题,指该问题存在多项式的时间复杂度,比如排序算法,O(n)=n*(n+1)/2。
    NP问题,Non-deterministic Polynomial(非确定性多项式),指该问题的解决过程中,如果给定一个可能的解(可行解),那么判断它是否是该问题的一个解,这一子问题是P问题。但是求出所有可能的解,这一问题可能是P问题,也可能更难。可以看出,P问题一定是NP问题。
    P问题,可以映射为一个确定性图灵机。NP问题,可以映射为一个非确定性图灵机。
    NPC问题,是NP问题的一个子集,这些问题解决过程中,存在一个子问题是NP问题,或者说,这种NP问题,求解所有可行解,是一个NP问题。
    NPH问题,这类问题更加复杂,指难度超过NPC问题的所有问题。比如:问题中,求解所有可行解这一子问题,是一个NPC问题。
    我们可以看出,以上问题都是NP问题的子集,因此,这种评价方法被称为“NP理论”。COOK定理,证明所有NPC问题中,任一问题存在多项式解法,则所有NPC问题都将存在多项式解法。目前,估计不可能存在这样的解法。基本上NPC问题、NPH问题,无法求出最优解,只能求出次优解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值