一、单项选择题
————————————————————
————————————————————
解析:
考查的是定义,程序不一定满足有穷性,如死循环和操作系统,算法必须有穷,C选项只是算法的必要条件,不是定义。
正确答案:B
————————————————————
————————————————————
解析:
时间复杂度为 0(n^2),说明算法的时间复杂度Tn)满足T(n)≤cn^2(其中c为比例常数),即T(n)=O(n),时间复杂度T(n)是问题规模n的函数,其问题规模仍然是n。
正确答案:C
————————————————————
————————————————————
解析:算法的空间复杂度为O(1),表示执行该算法所需的辅助空间大小相比输入数据的规模来说是一个常量,而不表示该算法执行时不需要任何空间或辅助空间。
正确答案:B
————————————————————
————————————————————
解析:看最高阶可得出答案,D最高阶为log2n,最小。
正确答案:D
————————————————————
————————————————————
解析:只看执行次数最多的一句话,假设i=i*2执行了t次,则2^t<=n,可理解为2^t=n,即t=log2n,则T(n)= O(log2n)。
正确答案:D
————————————————————
————————————————————
解析:假设i++执行了t次,t^3<=n,可理解为t^3=n,得出答案。
正确答案:C
————————————————————
————————————————————
解析:
正确答案:D
————————————————————
————————————————————
解析:当程序段中有条件判断语句时,取分支路径上的最大时间复杂度。
正确答案:A
————————————————————
————————————————————
解析:
正确答案:A
————————————————————
————————————————————
解析:
总执行次数为log2n
正确答案:C
————————————————————
————————————————————
解析:
正确答案:A
————————————————————
————————————————————
解析:
总执行次数为n
正确答案:B
————————————————————
————————————————————
解析:
正确答案:C
————————————————————
————————————————————
解析:
正确答案:B
————————————————————
————————————————————
解析:
正确答案:B
————————————————————
————————————————————
解析:设外层循环次数为t。i = 2^t.
正确答案:B
————————————————————
二、综合应用题
解答: