一、算法效率:
1.1 时间效率:
时间效率被称为时间复杂度,主要衡量的是一个算法的运行速度。
1.2 空间效率:
空间复杂度主要衡量一个算法所需要的额外空间。
二、时间复杂度:
算法中的基本操作的执行次数,为算法的时间复杂度。
2.1大O的渐进表示法:
1、用常数1取代运行时间中的所有加法常数。
2、在修改后的运行次数函数中,只保留最高阶项。
3、如果最高阶项存在且不是1,则去除与这个项目相乘的常数。
另外有些算法的时间复杂度存在最好、平均和最坏情况:
- 最坏情况:任意输入规模的最大运行次数(上界)
- 平均情况:任意输入规模的期望运行次数
- 最好情况:任意输入规模的最小运行次数(下界)
三、空间复杂度:
空间复杂度是对一个算法在运行过程中临时占用存储空间大小的度量,空间复杂度算的是变量的个数。
空间复杂度计算规则基本跟时间复杂度类似,也使用大O渐进表示法。