时间复杂度的计算
时间复杂度的计算分为三大类:一层循环、二层循环和多层循环。
一层循环
1.找出循环趟数t及每轮循环i的变化值
2.确立循环停止的条件
3.得出t与i之间的关系
4.联立两式,得出结果
eg:
void fun(int n) {
int i=0;
while (i*i*i<=n)
i++;
}
t 0 1 2 3 …
i 0 1 2 3 …
得出:t=i; i^3=n
故t^3=n,t=n开三次方根
具体见我B站视频讲解:
B站:Mr托尼托尼
时间复杂度的计算
二层循环
- 先找出外层循环中i的变化值
- 找出内层循环语句的执行次数
- 求内层循环执行次数总和
同见视频讲解
多层循环
1.求和公式
同见视频讲解