输入规模决定算法

运算量        n!      2^n      n^3      n^2         nlogn           n

最大规模     11         26       464      10000    4.5*10^6      1000000000

速度扩大两倍 11        27        587      14142    8.6*10^6      2000000000

这个表给出了机器速度扩大两倍后,算法所能解决的规模的对比。可以看出,n!和2n不仅能解决的问题规模十分小,而且增长缓慢;最快的nlogn和n算法不仅解决问题

的规模大,而且增长快。我们把渐进时间复杂为多项式的算法称为多项式时间算法(polymonial-time algorithm),也称有效算法;而n!或者2^n这样低效算法称为指数时间算法(exponential-time algorithm).

 尽管如此,考虑到目前主流机器的执行速度,多数算法竞赛所选取的数据规模基本符合此表。例如,一些指明n<=8的题目,可能n!的算法已经足够,n<=20的题目需要2^n的算法,而n<=300的题目可能就需要用至少n^3的多项式算法.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值