m=0
for(i=1;i<=N;i++)
for(j=1;j<=i;j++)
for(k=1;k<=j;k++)
m++;
求时间复杂度
时间复杂度等于m的被执行的次数:
i=1时,m被执行一次:
i=2时,m被执行1+3=4次:
i=3时, m被执行1+3+6=10次 :
可以观察到,第i次循环次数是一个有规律的数列: 1, 3, 6, 10,... ...
设数列
知道了第n次循环m的执行次数,再全部加起来就能知道总的次数,也就是求数列的前n项和:
又因为;
所以数列an前n-1项和
.
把(n-1)换成n,也就是数列前n项和;
1