Algorithm while循环的时间复杂度分析 inty=1; int j=0; 当(j
在每次迭代中增加Algorithm while循环的时间复杂度分析 inty=1; int j=0; 当(j,algorithm,while-loop,big-o,computer-science,data-analysis,Algorithm,While Loop,Big O,Computer Science,Data Analysis,在每次迭代中增加2时,循环迭代的次数将2n/2=n次。在每次迭代中,j增加2次,这意味着与每次迭代中增加1次相比,它将花费一半的时间 这意味着这里的时间复杂度是2n/2=n 所以O(n)。while(jn)中的n是什么取决于用户提供的输入,所以循环头将被检查n+1次,对吗?因为它必须再检查1次才能为假。@Buddy-right,但就渐近复杂性分析而言,这并不重要。 int y=1;
2
时,循环迭代的次数将2n/2=n
次。在每次迭代中,j增加2次,这意味着与每次迭代中增加1次相比,它将花费一半的时间
这意味着这里的时间复杂度是2n/2=n
所以O(n)。while(jn)中的
n
是什么取决于用户提供的输入,所以循环头将被检查n+1次,对吗?因为它必须再检查1次才能为假。@Buddy-right,但就渐近复杂性分析而言,这并不重要。
int y=1;
int j=0;
while(j<=2n){
y=y+i;
j=j+2;
}