算法复习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择题
1. 通俗地讲,算法是指解决问题的一种方法或一个过程,描述算法的方式有很多,如()。
A、自然语言方式
B、表格方式
C、程序设计语言
D、程序设计语言与自然语言相结合
算法的描述方式(常用的)
算法描述自然语言
流程图特定的表示算法的图形符号
伪语言包括程序设计语言的三大基本结构及自然语言的一种语言
类语言类似高级语言的语言,例如,类PASCAL、类C语言
2.算法的复杂性依赖于()。
A、要解决问题的规模
B、算法的输入
C、算法本身的函数
D、设计者的学术水平
3. 以下描述是有关算法设计的基本步骤:
①问题的陈述②算法分析③模型的拟制④算法的实现
⑤算法的详细设计⑥文档的编制,应与其它环节交织在一起
其中正确的顺序是()。
A、①②③④⑤⑥
B、①③⑤②④⑥
C、②④①③⑤⑥
D、⑥①③⑤②④
4.对于含n个元素的子集树问题,最坏情况下解空间的叶结点数目为()。
A、n!
B、2^n
C、2n+1-1
D、
1!/!
n
i
n i =
∑
5. 对于给定的问题,考虑算法复杂性的意义在于()。
A、设计出复杂性尽可能低的算法
B、若该问题已有多种算法时,选择其中复杂性低的求解问题
C、提高算法设计的学术水平层次
D、判断算法的正确性
6.符号Ω在算法复杂度描述中表示()。
A、紧渐近上界
B、渐近上界
C、紧渐近下界
D、渐近下界
7. 设()f n 、()g n 是定义在正数集上的正函数,如果存在正的常数C 和自然数0n ,使得当0n n ≥时有()()f n Cg n ≤,则称函数()f n 当n 充分大时有上界()g n ,记作
()(())f n O g n =,即()f n 的阶( )()g n 的阶。
A 、不高于
B 、不低于
C 、等价于
D 、逼近
8. 回溯法在解空间树T 上的搜索方式是( )。 A 、深度优先 B 、广度优先
C 、最小耗费优先
D 、活结点优先
9. 下面关于动态规划和备忘录方法的叙述中正确的是( )。 A 、备忘录方法是自顶向下的递归方式
B 、动态规划自底向上的,其最优值的计算不能递归定义
C 、当一个问题的所有子问题都至少需要求解一次时,用动态规划方法较好
D 、当子问题空间的部分子问题可不必求解时,用备忘录方法则较有利
10.一个四城市的旅行售货员问题,其解空间的深度为( )。 A 、3
B 、4
C 、5
D 、6
11. 分支限界法与回溯法都是在问题的解空间树上搜索问题的解,二者( )。 A 、求解目标不同,搜索方式相同 B 、求解目标不同,搜索方式也不同 C 、求解目标相同,搜索方式不同
D 、求解目标相同,搜索方式也相同
12. 下列哪些问题不可以用贪心算法求得最优解( )。 A 、哈夫曼编码 B 、活动安排问题
C 、0-1背包问题
D 、单源最短路径
13. 在对问题的解空间树进行搜索的方法中,一个活结点最多有一次机会成为活结点的是( )。
A 、回溯法
B 、分支限界法
C 、回溯法和分支限界法
D 、回溯法求解子集树问题
14.分支限界法在解空间树T 上的一种搜索方式是( )。 A 、深度优先 B 、广度优先 C 、活结点优先 D 、长度优先
15. 以下关于判定问题难易处理的叙述中正确的是( )。 A 、可以由多项式时间算法求解的问题是难处理的
B 、需要超过多项式时间算法求解的问题是易处理的
C 、可以由多项式时间算法求解的问题是易处理的
D 、需要超过多项式时间算法求解的问题是不能处理的
二、填空题
1. 如果存在正的常数C 和0N ,使得当 N ≥N0 时,有()()f N Cg N ≤,则称函数
()f N 当N 充分大时上有界,且()g N 是它的一个上界,记为 f(N)=O(g(N)) 。这时还
说明()f N 的阶不 (高于/低于)()g N 的阶。
2.在循环赛日程表问题中,若给定的运动员数n=2^(k-1),则至少需要__n ___天完成比赛;n=2^k 时,则需要__n-1___天。其中,k 为正整数。
3. 按照符号O 的定义,如果()(())g N O f N =,则()()O f O g += O(f) 。
4. 算法是由若干条指令组成的有序序列,并且具有输入、 输出 、 确定性 和有限性的性质。
5.一个直接或间接地调用自身的算法称为___递归_____,它有两个条件,一个是要直接或间接地调用自身,另一个是必须有_初始条件或非递归定义的初始值_。
6. 一个问题能够用分治法求解,说明该问题:①可以分解为规模比较小的问题且容易解决,②该问题具有 最优子结构 性质,③分解后的子问题的解可以合并为原问题的解,④分解后的各个子问题是相互 独立 的。
7. 运用动态规划法的一般步骤是:①分析最优解,②定义 建立递归关系 ,③求最优值,④构造最优解。
8. 四个物品的0-1背包问题的解空间层数为 5 ,共有 8(2^n )个叶结点。 共有 31([2^(n+1)]-1)个结点
9. 对解空间的搜索过程中如果运用回溯法一个中间结点有 (一次/多次)机会称为扩展结点,若使用分支限界法则有 (一次/多次)机会。
❤❤用分支限界法求解0-1背包问题时,对于每个物品j 有重量wj 和价值vj ,考虑当前物品i ,已装入背包中物品的重量和价值分别为cw 、cv ,剩余物品的价值上界为urv ,剩余容量为c ,目前已有的最优价值为bestp ,则当左儿子满足约束条件 属于可行结点时,就将它加入活结点队列中;当右儿子满足上界条件 时才将它加入活结点队列中。
10.在使用回溯法考虑求解一个具体问题时,往往需要设计出约束条件和限界条件。装