计算机算法设计与分析期终考试复习题(DOC 15页).docx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《计算机算法设计与分析期终考试复习题(DOC 15页).docx》由用户(2023DOC)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机算法设计与分析期终考试复习题DOC 15页 计算机 算法 设计 分析 期终 考试 复习题 DOC 15
- 资源描述:
-
1、计算机算法设计与分析复习题一、填空题1、一个算法复杂性的高低体现在计算机运行该算法所需的时间和存储器资源上,因此算法的复杂性有_时间复杂性和空间复杂性之分。2、出自于“平衡子问题”的思想,通常分治法在分割原问题,形成若干子问题时,这些子问题的规模都大致 相同。3、使用二分搜索算法在n个有序元素表中搜索一个特定元素,在最佳情况下, 搜索的时间复杂性为0( 1),在最坏情况下,搜索的时间复杂性为O(_logn_)。4、已知一个分治算法耗费的计算时间 T(n),T(n)满足如下递归方程:T(n) = 0( 1)(2T (n/2)+0(n)解得此递归方可得T(n)= O (_ n log n。这种方法
2、不同于动态5、动态规划算法有一个变形方法_备忘录方法规划算法“自底向上”的填充方向,而是“自顶向下”的递归方向,为每个解过 的子问题建立了备忘录以备需要时查看,同样也可避免相同子问题的重复求解。6. 递归的二分查找算法在divide阶段所花的时间是 0(1),conquer阶段所花的时间是 T(n/2),算法的时间复杂度是O( log n) _。7 . Prim算法利用贪心策略求解最小牛成树问题,其时间复杂度是 O(n2)。回溯法8、 背包冋题可用,等策略求解。9、 用动态规划算法计算矩阵连乘问题的最优值所花的时间是O( n3),问题空间大小是O( n2)。10、 图的m着色问题可用回溯法求解
3、,其解空间树中叶子结点个数是mn ,解空间树中每个内结点的孩子数是_m。11、 单源最短路径问题可用贪心法、分支限界等策略求解。12、一个算法的优劣可以用(时间复杂度。与(空间复杂度。与来衡量。13、 回溯法在问题的解空间中,按(深度优先方式)从根结点出发搜索解空间树。14、直接或间接地调用自身的算法称为(递归算法)。15、 日记号在算法复杂性的表示法中表示(渐进确界或紧致界)016、 在分治法中,使子问题规模大致相等的做法是出自一种(平衡(banlancing) 子问题。的思想。17、动态规划算法适用于解(具有某种最优性质。问题。18、贪心算法做出的选择只是(在某种意义上的局部。最优选择。1
4、9、20、21、22、23、最优子结构性质的含义是( 问题的最优解包含其子问题的最优解 )。 回溯法按( 深度优先 )策略从根结点出发搜索解空间树。 拉斯维加斯算法找到的解一定是( 正确解 )。按照符号 O 的定义 O(f)+O(g) 等于 O(maxf(n),g(n) 。 二分搜索技术是运用( 分治 )策略的典型例子。 动态规划算法中,通常不同子问题的个数随问题规模呈( 多项式 )级增长。最优子结构性质 )和( 子问题重叠性质 )是采用动态规划算法的两个基本29、 择,30、 法)31、24、 25、要素。26、(最优子结构性质 )和( 贪心选择性质 )是贪心算法的基本要素。27、(选择能产
5、生最优解的贪心准则 )是设计贪心算法的核心问题。28、分支限界法常以( 广度优先 ) 或(以最小耗费 (最大效益 )优先)的方式搜 索问题的解空间树。贪心选择性质是指所求问题的整体最优解可以通过一系列 (局部最优 )的选 即贪心选择达到。按照活结点表的组织方式的不同,分支限界法包括(队列式(FIFO)分支限界 和( 优先队列式分支限界法 )两种形式。如果对于同一实例, 蒙特卡洛算法不会给出两个不同的正确解答, 则称该蒙 特卡洛算法是( 一致的 )。32、哈夫曼编码可利用( 贪心法)算法实现。33概率算法有数值概率算法,蒙特卡罗(Monte Carlo )算法,拉斯维加斯(LasVegas)算法
6、和舍伍德(Sherwood)算法34以自顶向下的方式求解最优解的有( 贪心算法)35、 下列算法中通常以自顶向下的方式求解最优解的是(贪心法)。36、在对问题的解空间树进行搜索的方法中 , 一个活结点有多次机会成为活结点 的是( 回溯法)37、 旅行售货员问题不能用()解决可以用回溯法解决,分支限界法, NP 完 全性理论与近似算法38、贪心算法不能解决( 0-1 背包问题 N 皇后问题 )。可以解决背包问题39、投点法是( 概率算法)的一种。40、若线性规划问题存在最优解,它一定不在( 可行域内部 )二、简答题1、(8 分)写出下列复杂性函数的偏序关系(即按照渐进阶从低到高排序)2n 3n
7、log n n! nlog n n2 nn 103参考解答:103 Y log n Y nlog n y n2 3 n!Y nn每个选手必须与其他选手各赛一次; 每个选手一天只能赛一次;循环赛一共进行n - 1天。2、(8分)现在有8位运动员要进行网球循环赛,要设计一个满足以下要求的比 赛日程表:(1)(2)请利用分治法的思想,给这8位运动员设计一个合理的比赛日程。 参考解答:(3)表示结束租用时刻,10个客户的申请如下表所示:i12345678910s(i)03153511886f(i)65498713121110同一时刻,该羽毛球场只能租借给一位客户, 请设计一个租用安排方案,在 这10位
8、客户里面,使得体育馆能尽可能满足多位客户的需求,并算出针对上表 的10个客户申请,最多可以安排几位客户申请。参考解答:将这10位客户的申请按照结束时间f(i)递增排序,如下表:i12345678910s(i)13053568811f(i)45678910111213选择申请1 (1,4 )依次检查后续客户申请,只要与已选择的申请相容不冲突,则选择该申请。直 到所有申请检查完毕。申请 4( 5,7 )、申请8( 8,11 )、申请10( 11,13)最后,可以满足:申请1 (1,4 )、申请4(5,7 )、申请8(8,11 )、申请10( 11,13) 共4个客户申请。这已经是可以满足的最大客户
9、人数。4、(8分)对于矩阵连乘所需最少数乘次数问题,其递归关系式为:.I0i=j皿 j=佃nmi,k +mk+1, j + PiPkPjj其中mi,j为计算矩阵连乘Ai, Aj所需的最少数乘次数,“为矩阵Ai的行,p为矩阵Ai的列。现有四个矩阵,其中各矩阵维数分别为:AAAA50x1010x4040x30305p 0X p 1p 1X p 2P 2% P 3P 3X P 4请根据以上的递归关系,计算出矩阵连乘积A AAA所需要的最少数乘次数。参考解答:m11 + m24 +90944=0+ 8000 + 50咒 10咒 5 = 10500m14 =min m12 +m34 + p? p4 =2
10、0000+ 6000 +50x40x 5 = 36000m13pm44 + Po p3 P4 = 27000 + 0 + 50x 30x 5 = 34500 =105005、(8分)有这样一类特殊0-1背包问题:可选物品 重量越轻的物品价值越高。n=6, c=20,P= (4, 8,15,1,6,3),W=(5,3,2,10,4,8)。其中n为物品个数,c为背包载重量,P表示物品的价值,W表示物品的重 量。请问对于此0-1背包问题,应如何选择放进去的物品,才能使到放进背包的 物品总价值最大,能获得的最大总价值多少?参考解答:因为该0-1背包问题比较特殊,恰好重量越轻的物品价值越高,所 以优先取
11、重量轻的物品放进背包。最终可以把重量分别为2, 3, 4, 5的三个物品放进背包,得到的价值和为15 + 8 + 6 + 4 = 33,为最大值。6. 请用英文写出三种以上能求解0-1背包问题的设计算法策略。参考解答:Dyn amic P rogrammi ngBacktrackBran ch-a nd-Bo und(每答对一条给一分)7. 请说明动态规划方法为什么需要最优子结构性质。参考解答:最优子结构性质是指大问题的最优解包含子问题的最优解。动态规划方法是自底向上计算各个子问题的最优解,即先计算子问题的最优解, 然后再利用子问题的最优解构造大问题的最优解,因此需要最优子结构8. 请说明:(
12、1)优先队列可用什么数据结构实现?(2)优先队列插入算法基本思想?(3)优先队列插入算法时间复杂度?参考解答:(1)堆。(1分)(2)在小根堆中,将元素x插入到堆的末尾,然后将元素x的关键字与其双亲的关键字比较,若元素x的关键字小于其双亲的关键字,则将元素x与其双亲交换,然后再将元素x与其新双亲的关键字相比, 直到元素x的关键字大于双亲的关键字,或元素 x到根为止。(4分)(3)0( log n)( 1 分)9.设计动态规划算法的主要步骤是怎么的?请简述。参考解答:(1)找出最优解的性质,并刻划其结构特征。(6分)(2)递归地定义最优值。(3)以自底向上的方式计算出最优值。(4)根据计算最优值
13、时得到的信息,构造最优解。10. 分治法所能解决的问题一般具有哪几个特征?请简述。参考解答:(1)该问题的规模缩小到一定的程度就可以容易地解决;(6分)(2)该问题可以分解为若干个规模较小的相同问题,即该问题具有最优子结构性质;(3)禾用该问题分解出的子问题的解可以合并为该问题的解;即子问题之间不包(4)原问题所分解出的各个子问题是相互独立的, 含公共的子问题。,然后再从当前的 为了有效地选择下一扩展结点,加速搜索的进 ,并根据函数值,从当前活结11. 分支限界法的搜索策略是什么?参考解答:在扩展结点处,先生成其所有的儿子结点(分支)活结点表中选择下一个扩展结点。程,在每一个活结点处,计算一个
展开阅读全文