[单项选择题] 下面这个程序段的时间复杂度是( )。
for (i=1; i<n; i++)
y=y+1;
for (j=0; j<=(2*n); j++)
x++;
A. O(log2n)
B. O(n)
C. O(nlog2n)
D. O(n2)
参考答案:
D问题解析:
语句的频度指的是该语句重复执行的次数。一个算法中所有语句的频度之和构成了该算法的运行时间。在本例算法中,其中语句“y=y+1;”的频度是n-1,语句“x++;”的频度是(n-1)(2n+1)=2n2-n-1。则该程序段的时间复杂度是T(n)=n-1+n2-n-1=O(n2)。

![[单项选择题] 下面这个程序段的时间复杂度是( )。 for (i=1; i<n; i++) y=y+1; for (j=0; j<=(2*n); j++)x++; [单项选择题] 下面这个程序段的时间复杂度是( )。 for (i=1; i<n; i++) y=y+1; for (j=0; j<=(2*n); j++)x++;](http://www.mshxw.com/aiimages/31/257886.png)
