1 有效率的算法
什么样的算法算是有效率呢?
如果一个算法的时间复杂度大于等于,那么可以认为这个算法是没有效率的
原因在于,我们考虑暴力算法
就是我们枚举所有可能的结果,判断他们是不是正确的答案,所有结果的数量如果为O(n)的话,那么每个结果都可能为True或者False,需要时间复杂度。
所以如果一个算法的时间复杂度大于等于,说明它还不如暴力试解的方法,自然也就没有效率了。
如果一个算法有多项式级的时间复杂度,那么这个算法是有效率的。
f(n),g(n)都是多项式级的时间复杂度->f(g(n))也是多项式级的时间复杂度
2 算法效率分析(从执行之间的角度判断)
即使输入数据的规模相同,输入的内容不同,算法的执行时间也会不同
最差时间 worst-case |
保证了最差的情况下的运行时间 |
Running time gu
|