赞
踩
①
i=1;k=0;
while(i<n-1){
k=k+10*i;
i++;
}
解析:共循环了n-1次所以时间复杂度是O(n)
②
for(i=0;i<n;i++)
for(j=0;j<m;j++)
a[i] [j]=0;
解析:内循环m次,外循环n次,所以时间复杂度O(mn)
③
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
x++;
解析:共循环了n*n次,所以时间复杂度为O(n^2)
④
x = 90; y = 100;
while(y > 0){
if(x > 100){
x = x - 10;
y--;
}else{
x++;
}
}
解析:当x执行了十一次既x=101时,y-1,所以总循环100*11=1100,所以时间复杂度为O(1)
⑤
int i=1;
while(i<n){
i = i*2;
}
解析:第1次:i=2*1,第2次:i=2*2,第3次:i=2*3,第x次:i=x*2设第x次退出循环,则有i=2x ≥ n,取对数解得x=logn,共执行logn次,时间复杂度为:O(logn)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。