算法分析复习题〔含答案〕
一、选择题
1、衡量一个算法好坏的标准是( )。运行速度快占用空间少时间复杂度低代码短、O(g(n)) = { f(n) | 存在正常数c和n0使得对所有nn0有:0 f(n) cg(n) };
(B)O(g(n)) = { f(n) | 存在正常数c和n0使得对所有nn0有:0 cg(n) f(n) };
(C)O(g(n)) = { f(n) | 对于任何正常数c>0,存在正数和n0 >0使得对所有nn0
有:0 f(n)
(D)O(g(n)) = { f(n) | 对于任何正常数c>0,存在正数和n0 >0使得对所有nn0
有:0 cg(n) < f(n) };
3、二分搜索算法是利用( A )实现的算法。
(A)分治策略 (B)动态规划法 (C)贪心法 (D)回溯法
4、使用分治法求解不需要满足的条件是(A )。
(A)子问题必须是一样的 (B)子问题不能够重复
(C)子问题的解可以合并 (D)原问题和子问题使用相同的方法解
5、合并排序算法是利用(? )实现的算法。分治策略动态规划法贪心法回溯法实现乘法是利用()的算法。贪心法动态规划法分治策略回溯法、以下不可以使用分治法求解的是( )。棋盘覆盖问题选择问题归并排序 0/1背包问题、
(A)分治策略(B)动态规划法(C)贪心法(D)回溯法
9、
(A)分治法(B)动态规划法(C)贪心法 (D)回溯法
10、
(A)分支界限算法 (B)动态规划算法 (C)贪心算法 (D)回溯算法
11、
(A)贪心法(B)动态规划法(C)分治策略(D)回溯法
12、最长公共子序列算法利用的算法是(???)。分支界限法动态规划法贪心法回溯法、
(A)备忘录法 (B)动态规划法(C)贪心法 (D)回溯法
14、下列是动态规划算法基本要素的是(??? )。
定义最优解构造最优解算出最优解
15、下列不是动态规划算法基本步骤的是( A )。
(A)找出最优解的解空间 (B)构造最优解 (C)算出最优解 (D)定义最优解
16、能采用贪心算法求最优解的问题,一般具有的重要性质为:( A )
(A)最优子结构性质与贪心选择性质 (B)重叠子问题性质与贪心选择性质
(C)最优子结构性质与重叠子问题性质 (D)预排序与递归调用
17、下面问题(B )不能使用贪心法解决。
(A)单源最短路径问题 (B)N皇后问题
(C)最小花费生成树问题 (D)背包问题
18、以下不可以使用分治法求解的是(D )。
(A)棋盘覆盖问题 (B)选择问题 (C)归并排序 (D)0/1背包问题
19、备忘录方法是那种算法的变形(?B?)。
(A)分治法?? (B)动态规划法? (C)贪心法? ?(D)回溯法?
20、
(A)备忘录法(B)动态规划法(C)贪心法(D)回溯法
21、
(A)递归函数(B)剪枝函数 (C)随机数函数(D)搜索函数
22、回溯法在问题的解空间树中,按( D )策略,从根结点出发搜索解空间树。
(A)广度优先 (B)活结点优先 (C)扩展结点优先 (D)深度优先
23、回溯法的效率不依赖于下列哪些因素(???D?????)。
(A).满足显约束的值的个数????(B)计算约束函数的时间??
(C)?计算限界函数的时间?? (D)?确定解空间的时间
24、回溯法解0-1背包问题时的解空间树是(?A??)。?
(A)子集树??? (B)排列树? ?(C)深度优先生成树?? (D)广度优先生成树?
25、回溯法解旅行售货员问题时的解空间树是(?B??)。?
(A)子集树??? (B)排列树? ?(C)深度优先生成树?? (D)广度优先生成树?
26、一个问题可用动态规划算法或贪心算法求解的关键特征是问题的( )。
重叠子问题定义最优解
、下列算法中不能解决0/1背包问题的是( )贪心法动态规划回溯法分支限界法、下面问题( )不能使用贪心法解决。单源最短路径问题 N皇后问题 最小生成树问题 背包问题、矩阵连乘问题的算法可由()设计实现。分支界限算法贪心算法回溯算法、(??)。最优子结构最优解定义最优解
算法分析的目的是什么?
算法的时间复杂性与问题的什么因素相关?
算法的渐进时间复杂性的含义?
最坏情况下的时间复杂性和平均时间复杂性有什么不同?
简述二分检索(折半查找)算法的基本过程。
背包问题的目标函数和贪心算法最优化量度相同吗?
采用回溯法求解的问题