1、求以下代码片段的时间复杂度
for(i= 0 ; i < n; i++){ cout<< i << " " ; i++; }
在循环中i增加了两次,时间复杂度O(n)=O(n);
2、求以下代码片段的时间复杂度
for(i= 0 ; i < n; i++){ for(j = 0; j<n ;j++){ cout<< i << " "; } }
内循环n次,外循环n次,循环n*n=n^2,时间复杂度O(n)=O(n^2);
3、求以下代码片段的时间复杂度
a=0; b=1; for (i=1;i<=n;i++) { s=a+b; b=a; a=s; }
循环n次,执行3个步骤,循环3n,时间复杂度O(n)=O(n);
4、求以下算法的时间复杂度
i=1;
while (i<=n)
i=i*2;
循环n次,2*f(n)=n;f(n)=log2n;时间复杂度O(n)=O(log2n);
5、for(i=1;i<=n;i++)
{ for(j=1;j<=i;j++)
{ for(k=1;k<=j;k++)
x=x+2; } }
循环3次,取最大值n*n*n=n^3;时间复杂度O(n)=O(n^3);