软件水平考试

设某算法的计算时间表示为递推关系式T(n)=T(n-1)+n(n>O)及T(0)=1,则该算法的时间复杂度为( )。A.O(lgn) B.O(nlgn) C.O(n) D.O(n^2)

题目
设某算法的计算时间表示为递推关系式T(n)=T(n-1)+n(n>O)及T(0)=1,则该算法的时间复杂度为( )。

A.O(lgn)
B.O(nlgn)
C.O(n)
D.O(n^2)
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

设某算法的计算时间可用递推关系式T(n)=2T(n/2)+n表示,则该算法的时间复杂度为(59)。

A.O(1gn)

B.O(nlgn)

C.O(n)

D.O(n2)


正确答案:B
解析:本题考查的是算法的时间复杂度概念。

第2题:

某算法的时间复杂度表达式为T(n)=an2+bnlgn+cn+d,其中,n为问题的规模,a、b、c和d为常数,用O表示其渐近时间复杂度为( )。

A.(n2)

B.O(n)

C.O(nlgn)

D.O(1)


正确答案:A
解析:时间复杂度是度量算法执行的时问长短。根据表达式T(n)=an2+bnlgn+cn+d可知当n无限大时,T(n)=an2,故时间复杂度为O(n2)

第3题:

若一个算法中的语句频度之和为T(n)=3720n+4nlogn,则算法的时间复杂度为 O(n)。()

此题为判断题(对,错)。


参考答案:错误

第4题:

设求解某问题的递归算法如下: F(int n){ if n==1{ Move(1); } else{ F(n-1); Move(n); F(n-1); } } 求解该算法的计算时间时,仅考虑算法Move所进行的计算为主要计算,且Move为常数级算法,设算法Move的计算时间为k,当n=5时,算法F的计算时间为(42)。

A.7k

B.15k

C.31k

D.63k


正确答案:C
解析:直接递归算法的计算时间可以根据递归调用形式对应写出其递推关系式。按照题目中描述的算法形式可知,算法F的计算时间T(n)的递推关系式为T(n)=2T(n-1)+1,其中两次递归调用F(n-1)用时2T(n-1),算法Move的计算时间为常数,计为1。将上述递推关系式中常数1用k替换,求解可得T(n)=2n-1T(1)+k2i,易知T(1)=k,将n=5代入可得T(n)=2n-1T(1)+k2i=25-1k+k2i=24k+(20+21+22+23)k=31k。

第5题:

某算法的时间代价递推关系为T(n)=2T(n/2)+n,T(1)=1,则该算法的时间复杂度为______。

A.O(n)

B.

C.O(n2)

D.O(1)


正确答案:B
解析:由时间代价严格推出时间复杂度比较复杂,对于这种题,可用特例验证,不过需要注意的是特例不能取太少,至少n取到5,这样规律基本就可以确定了。
  T(1)=1
  T(2)=2T(1)+2=4
  T(3)=2T(1)+3=5
  T(4)=2T(2)+4=12
  T(5)=2T(2)+5=13
  很容易排除D选项,其递增速率介于O(n)和O(nsup>2</sup>)之间,故选B。

第6题:

● 某算法的时间复杂度表达式为 T(n)=an2+bnlgn+cn+d,其中,n为问题的规模,a、b、c和d为常数,用O表示其渐近时间复杂度为 (63)。

(63)A. O(n2) B. O (n) C. O (n1gn) D. O (1)


正确答案:A
解析:时间复杂度是度量算法执行的时问长短。根据表达式T(n)=an2+bnlgn+cn+d可知当n无限大时,T(n)=an2,故时间复杂度为O(n2)

 

第7题:

假设某算法的计算时间可用递推关系式T(n)=2T(n/2)+n,T(1)=1表示,则该算法的时间复杂度为()

A.O(logn)

B.O(n*logn)

C.O(n)

D.O(n^2)


正确答案:B

第8题:

若算法中语句的最大频度为T(n)=2006n+6n㏒n+29㏒2n,则其时间复杂度为()。

A、O(㏒n)

B、O(n)

C、O(n㏒n)

D、O(㏒2n)


正确答案:C

第9题:

下面算法的时间复杂度为(34)。 int f(unsigned int n){ if(n=0||n==1)return 1; else return n*f(n-1); }

A.O(1)

B.O(n)

C.O(n2)

D.O(n!)


正确答案:B
解析:连同其他函数调用f和f递归调用次数,计算f(n)需要执行n次函数调用。

第10题:

● 设某算法的计算时间表示为递推关系式T(n)= T(n-1) + n (n>0) 及T(0)=1,则该算法的时间复杂度为 (65) 。


正确答案:D

更多相关问题