一. 什么是算法:是指用来操作数据,解决程序问题的一组方法。对于同一个问题,使用不同的算法,结果是一样的,但是过程中所消耗的资源和时间却会有很大的区别。
二. 从哪些角度衡量消耗资源的多少:时间维度,空间维度。
时间维度:指当前算法所消耗的时间——>时间复杂度
空间维度:指当前算法需要占用的内存空间——>空间复杂度
# 使用什么样的算法来实现,需要在时间,空间复杂度之间进行取舍,权衡。
三. 时间复杂度
公式:T(n) = O(f(n)) ——>大O表示法
通过举例说明:
解释:图片中第一行的执行次数,只有一次;
第三行的执行次数,有n次;
第四行的执行次数,有n次;
综合以上,计算出来的总的执行次数为:f(n)=1+n+n=2n+1;
如果当n为无穷大的时候,1可忽略不计,即f(n)=2n,此时f(n)随着n的数值变化而变化