当前位置:首页 >课程 >算法分析与设计

1、递归函数是指在一个函数体中出现直接或间接调用该函数自身的函数。

A、错
B、对

参考答案:请扫码使用小程序查看答案

2、已知f(1)=1,f(n)=f(n-1)+n,那么f(50)的作用是( )。

A、计算1到50的乘积。
B、计算1到50的和。
C、计算50个1的和。
D、计算斐波拉契数列的第50个元素的值。

参考答案:请扫码使用小程序查看答案

3、递归的优点包括( )。

A、结构清晰
B、容易用数学归纳法来证明算法的正确性
C、可读性强
D、运行效率高

参考答案:请扫码使用小程序查看答案

4、在经典的汉诺塔问题中,如果有5个圆盘需要从A柱移至C柱,最少需要移动( )步。

A、31
B、41
C、32
D、28

参考答案:请扫码使用小程序查看答案

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)

参考答案:请扫码使用小程序查看答案

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

A、5
B、3
C、6
D、4

参考答案:请扫码使用小程序查看答案

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

A、在平均情况下时间复杂度为O(nlogn)
B、在最坏情况下时间复杂度为O(n^2)
C、在平均情况下时间复杂度为O(n^2)
D、在最好情况下时间复杂度为O(nlogn)

参考答案:请扫码使用小程序查看答案

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

A、归并排序
B、冒泡排序
C、插入排序
D、选择排序

参考答案:请扫码使用小程序查看答案