2-1下面代码段的时间复杂度是()。(2分)
x=n; //n>1
y=0;
while( x≥(y+1)*(y+1) )
y++;
- A.O(log2n)
- B.O(n)
- C.O(n1/2)
- D.O(1)
作者: 周治国
单位: 东北师范大学
2-2下列函数
int func ( int n )
{ int i = 0, sum = 0;
while ( sum < n ) sum += ++i;
return i;
}
的时间复杂度是:(2分)
- A.O(nlogn)
- B.O(n)
- C.O(n1/2)
- D.O(logn)
作者: 考研试卷
单位: 浙江大学
2-3下列代码
for(i=0; i<n; i++)
for(j=i; j>0; j/=2)
printf(“%d\n”, j);
的时间复杂度是: (3分)
- A.O(NlogN)
- B.O(N2)
- C.O(N)
- D.O(N×i)
作者: DS课程组
单位: 浙江大学
2-4下面代码段的时间复杂度是()。 (2分)
x=0;
for( i=1; i<n; i++ )
for ( j=1; j<=n-i; j++ )
x++;
- A.O(2n)
- B.O(n3)
- C.O(n2)
- D.O(n)
作者: 周治国
单位: 东北师范大学
2-5计算机算法必须具备输入、输出和()等五个特性。 (2分)
- A.易读性、稳定性和安全性
- B.可行性、确定性和有穷性
- C.确定性、有穷性和稳定性
- D.可行性、可移植性和可扩充性
作者: 严冰
单位: 浙江大学城市学院
2-6给定N×N×N的三维数组A,则在不改变数组的前提下,查找最小元素的时间复杂度是:(2分)
- A.O(N3)
- B.O(N3logN)
- C.O(NlogN)
- D.O(N2)
作者: DS课程组
单位: 浙江大学
2-7
要判断一个整数N(>10)是否素数,我们需要检查3到
N
\sqrt{N}
N之间是否存在奇数可以整除N。则这个算法的时间复杂度是:(2分)
- A.O( N \sqrt{N} N)
- B.O(0.5logN)
- C.O( N \sqrt{N} NlogN)
- D.O(N/2)
作者: 徐镜春
单位: 浙江大学
2-8
下列代码
if ( A > B ) {
for ( i=0; i<N*N/100; i++ )
for ( j=N*N; j>i; j-- )
A += B;
}
else {
for ( i=0; i<N*2; i++ )
for ( j=N*3; j>i; j-- )
A += B;
}
的时间复杂度是:(2分)
- A.O(N4)
- B.O(N6)
- C.O(N5)
- D.O(N3)
作者: 徐镜春
单位: 浙江大学
2-9
下列函数中,哪个函数具有最慢的增长速度:(2分)
- A.N(logN)2
- B.N2logN
- C.NlogN2
- D.N1.5
作者: DS课程组
单位: 浙江大学
2-10计算机算法指的是()。 (2分)
- A.调度方法
- B.解决问题的有限运算序列
- C.排序方法
- D.计算方法
作者: 严冰
单位: 浙江大学城市学院