智慧树知到《算法分析与设计》章节测试答案


A.31

B.41

C.32

D.28

正确答案:31

5、分治法能解决的问题一般具有()等特征。

A.该问题缩小到一定程度时可以容易地解决

B.分解出的子问题的解可以合并为原问题的解

C.子问题相互独立

D.最优子结构

正确答案:该问题缩小到一定程度时可以容易地解决;分解出的子问题的解可以合并为原问题的解;子问题相互独立;最优子结构

6、在使用分治法设计算法时,最好使子问题的规模大致相同,即将一个问题分成大小相等的多个子问题的处理方法是行之有效的。

A.正确

B.错误

正确答案:正确

7、给定递归公式T(n)=4T(n/2)+O(n),由主定理可以得知T(n)=()。

A.O(logn)

B.O(nlogn)

C.O(n^2)

D.O(n)

正确答案:O(n^2)

8、已知某楼房共20层,如果采用二分查找,请问最多猜()次就能猜出任意一个楼层。

A.5

B.3

C.6

D.4

正确答案:5

9、关于快速排序的时间复杂度,()是正确的。

A.在平均情况下时间复杂度为O(nlogn)

B.在最坏情况下时间复杂度为O(n^2)

C.在平均情况下时间复杂度为O(n^2)

D.在最好情况下时间复杂度为O(nlogn)

正确答案:在平均情况下时间复杂度为O(nlogn);在最坏情况下时间复杂度为O(n^2);在最好情况下时间复杂度为O(nlogn)

10、快速排序是对传统排序算法()的一种改进。

A.归并排序

B.冒泡排序

C.插入排序

D.选择排序

正确答案:冒泡排序

第三章单元测试

1、能够使用动态规划算法来求解的问题通常需要具备两个重要的性质,它们分别是()。

A.贪心选择性质

B.最优子结构

C.重叠子问题

D.递归调用

正确答案:最优子结构;重叠子问题

2、关于备忘录法,以下说法正确的是()。

A.备忘录法又称为记忆化搜索,它采用一种自底向上的方式求解问题。

B.备忘录法可以避免相同子问题的重复求解。

C.备忘录法的控制结构与直接使用递归方法的控制结构相同。

D.备忘录法为每个解过的子问题建立备忘录以备需要时查看,又称查表法。

正确答案:备忘录法可以避免相同子问题的重复求解。备忘录法的控制结构与直接使用递归方法的控制结构相同。备忘录法为每个解过的子问题建立备忘录以备需要时查看,又称查表法。

3、字符序列abcde与字符序列abdge的最长公共子序列长度为(),最长公共子串长度为()。

A.4,6

B.3,5

C.4,2

D.4,1

正确答案:4,2

4、使用动态规划算法求两条长度分别为m和n的序列的最长公共子序列,其时间复杂度为()。

A.O(n^2)

B.O(m^n)

C.O(nlogm)

D.O(n*m)

正确答案:O(n*m)

5、输入数组(-1, 0, 1, -2, 3),它的最大子段和是()。

A.1

B.4

C.3

D.2

正确答案:3

6、序列(1,7,3,4,9,2,3)的最长递增子序列的长度为()。

A.1

B.3