ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:78.48KB ,
资源ID:9318621      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-9318621.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(算法设计与分析考试题及答案.docx)为本站会员(b****0)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

算法设计与分析考试题及答案.docx

1、算法设计与分析考试题及答案1.一个算法就是一个有穷规则的集合, 其中之规则规定了解决某一特殊类型问题的一系列运算,此外,算法还应具有以下五个重要特性: , , , , 。 2.算法的复杂性有 和_ 之_ 分,衡量一个算法好坏的标准是 。_3.某 一 问 题 可 用 动 态 规 划 算 法 求 解 的 显 著 特 征 是4.若序列 X=B,C,A,D,B,C,D , Y=A,C,B,A,B,D,C,D ,请给出序列 X 和 Y 的一个最长公共子序列 。_5.用回溯法解问题时,应明确定义问题的解空间,问题的解空间至少应包含 。_6.动态规划算法的基本思想是将待求解问题分解成若干 ,_先求解 ,_

2、然后从这些 的_解得 到原问题的解。7.以深度优先方式系统搜索问题解的算法称为 。_背包问题的回溯算法所需的计算时间为 用_,动态规划算法所需的计算时间为 。_9. 动态规划算法的两个基本要素是 和_ 。_10.二分搜索算法是利用 实_现的算法。二、综合题 ( 50 分)1.写出设计动态规划算法的主要步骤。2.流水作业调度问题的 johnson 算法的思想。3.若 n=4 ,在机器 M1 和 M2 上加工作业 i 所需的时间分别为 ai 和 bi,且(ai,a2,a3,a4)=(4,5,12,10) , (bi,b2,b3,b4)=(8,2,15,9)求 4 个作 业的最优调度方案,并计算最优

3、值。4.使用回溯法解 0/1 背包问题:n=3 ,C=9 , V=6,10,3 , W二3,4,4, 其解空间有长度为 3 的 0-1 向量组成,要求用一棵完全二叉树表示 其解空间(从根出发,左 1 右 0 ),并画出其解空间树,计算其最优 值及最优解。5.设S= Xi, X2 , Xn是严格递增的有序集,利用二叉树的结点来存储S中的元素,在表示S的二叉搜索树中搜索一个元素 X,返回的 结果有两种情形,(1 )在二叉搜索树的内结点中找到 X=Xi,其概率为bi。(2 )在二叉搜索树的叶结点中确定 X ( Xi, Xi+1 ),其概率为 ai。在表示S的二叉搜索树T中,设存储元素Xi的结点深度为

4、Ci; 叶结点(Xi, Xi+1 )的结点深度为di,则二叉搜索树T的平均路长p 为多少假设二叉搜索树Tij= Xi, Xi+i Xj最优值为mij,Wij= a i-i +b i+ +b j+a j,则 mij(1二i二jv二n) 递归关系表达式为什么6.描述 0-1 背包问题。三、简答题 ( 30 分)1.流水作业调度中,已知有 n 个作业,机器 M1 和 M2 上加工作业 i 所需的时间分别为ai和bi,请写出流水作业调度问题的johnson法 则中对ai和bi的排序算法。(函数名可写为sort(s,n)2.最 优 二 叉 搜 索 树 问 题 的 动 态 规 划 算 法 ( 设 函 数

5、名binarysearchtree) )答案: 一、填空1确定性 有穷性 可行性 0 个或多个输入 一个或多个输出2.时间复杂性 空间复杂性 时间复杂度高低3.该问题具有最优子结构性质4.BABCD或CABCD或CADCD 5.一个(最优)解6.子问题 子问题 子问题7.回溯法8.o(n*2 n) o(minnc,2 n)9 .最优子结构 重叠子问题10. 动态规划法二、综合题1问题具有最优子结构性质;构造最优值的递归关系表达式;最优值的算法描述;构造最优解;2.令Ni二i|a i=b i;将Ni中作业按ai的非减序排序得到Ni 将N2中作业按bi的非增序排序得到N2Ni 中作业接 N 2中作

6、业就构成了满足 Johnson 法则的最优调度。3 .步骤为: Ni=i , 3, N2=2 , 4;Ni=i, 3, N2=4, 2;最优值为: 384.解空间为(0,0,0),(0,1,0),(0,0,1),(1,0,0),(0,1,1),(1,0,1),(1,1,0),(1,1,1)解空间树为:n5.二叉树T的平均路长P=i 1mij=Wij+mi nmik+mk+1j (1=i=jj)6.已知一个背包的容量为C,有n件物品,物品i的重量为Wi,价值 为Vi,求应如何选择装入背包中的物品,使得装入背包中物品的总 价值最大。三、简答题void sort(flowjope s,i nt n)

7、int i,k,j,l;for(i=1;in) break;ag=0)if(sk.asj.a) k=j; swap(si.index,sk.index); swap(si.tag,sk.tag); l=i;sj.b) k=j;swap(si.index,sk.index); ag,sk.tag); 2.*s,intvoid binarysearchtree(int a,int b,int n,int *m,int *w)int i,j,k,t,l;for(i=1;i=n+1;i+) wii-1=ai-1;mii-1=0; for(l=0;l=n-1;l+)Init-single-source(

8、G,s)2.S=3.Q=VGQ do u=mi n(Q)S=S U ufor each vertex 3do 4 四、 算法理解题(本题10分)根据优先队列式分支限界法,求下图中从v1点到v9点的单源最短 路径,请画出求得最优解的解空间树。要求中间被舍弃的结点用X 标记,获得中间解的结点用单圆圈O框起,最优解用双圆圈框起。五、 算法理解题(本题5分)设有n=2 k个运动员要进行循环赛,现设计一个满足以下要求的比 赛日程表:1每个选手必须与其他n-1名选手比赛各一次;2每个选手一天至多只能赛一次;3循环赛要在最短时间内完成。(1) 如果n=2 k,循环赛最少需要进行几天;(2) 当n=2 3=8

9、时,请画出循环赛日程表。六、 算法设计题(本题15分)分别用贪心算法、动态规划法、回溯法设计0-1背包问题。要求: 说明所使用的算法策略;写出算法实现的主要步骤;分析算法的时间。七、 算法设计题(本题10分)通过键盘输入一个高精度的正整数 n(n的有效位数w 240),去掉 其中任意s个数字后,剩下的数字按原左右次序将组成一个新的正整 数。编程对给定的n和s,寻找一种方案,使得剩下的数字组成的新数最小。【样例输入】178543S=4【样例输出】13答案:一、填空题(本题 15 分,每小题 1 分)1规则 一系列运算2.随机存取机 RAM(Random Access Machine) ;随机存取

10、存储程序机 RASP(Random Access Stored Program Machine) ;图灵机 (Turing Machine)3.算法效率4.时间 、空间、时间复杂度、 空间复杂度52n 6 最好 局部最优选择7. 贪心选择 最优子结构 二、简答题(本题 25 分,每小题 5 分)1 、 分治法的基本思想 是将一个规模为 n 的问题分解为 k 个规模较小的子问 题,这些子问题互相独立且与原问题相同;对这 k 个子问题分别求解。如 果子问题的规模仍然不够小,则再划分为 k 个子问题,如此递归的进行下 去,直到问题规模足够小,很容易求出其解为止;将求出的小规模的问题 的解合并为一个更

11、大规模的问题的解,自底向上逐步求出原来问题的解。2 、 “最优化原理 ”用数学化的语言来描述:假设为了解决某一优化问题, 需要依次作出n个决策D1 , D2,Dn,如若这个决策序列是最优的, 对于任何一个整数 k, 1 k n ,不论前面 k 个决策是怎样的,以后的最 优决策只取决于由前面决策所确定的当前状态,即以后的决策 Dk+1 ,Dk+2 , Dn 也是最优的。3、 某个问题的最优解包含着其子问题的最优解。这种性质称为 最优子结构 性质。4、 回溯法的基本思想 是在一棵含有问题全部可能解的状态空间树上进行深 度优先搜索,解为叶子结点。搜索过程中,每到达一个结点时,则判断该 结点为根的子树

12、是否含有问题的解,如果可以确定该子树中不含有问题的 解,则放弃对该子树的搜索,退回到上层父结点,继续下一步深度优先搜 索过程。在回溯法中,并不是先构造出整棵状态空间树,再进行搜索,而 是在搜索过程,逐步构造出状态空间树,即边搜索,边构造。5、 P(Polynomial 问题):也即是多项式复杂程度的问题。NP 就是 Non-deterministic Polynomial 的问题,也即是多项式复杂程度 的非确定性问题。NPC(NP Complete) 问题,这种问题只有把解域里面的所有可能都穷举了 之后才能得出答案, 这样的问题是 NP 里面最难的问题, 这种问题就是 NPC 问题。三、算法填

13、空(本题 20 分,每小题 5 分)1 、 n 后问题回溯算法(1)!Mj&!Li+j&!Ri-j+N(2)Mj=Li+j=Ri-j+N=1;(3)try(i+1,M,L,R,A)(4)Aij=0(5)Mj=Li+j=Ri-j+N=02、数塔问题。( 1 )c=r trc+=tr+1c(3)trc+=tr+1c+13、 Hanoi 算法(1)move(a,c)(2)Hanoi(n-1, a, c , b)(3)Move(a,c)4、 (1) pv=NIL(2)pv=u(3)v adju(4)Relax(u,v,w)12 3 4 5 6 7821 4 3 6 5 87四、算法理解题(本题10分)

14、五、 (1) 8天(2分);(2)当n=2 3=8时,循环赛日程表(3分)六、 算法设计题(本题15分) (1 )贪心算法 0 (nlog (n)可能多的单位重量价值最高的物品装入背包。 若将这种物品全部装入背包可能多地装入背包。依此策略一直地进行下去,直到背包装满为止具体算法可描述如下:void Kn apsack(i nt n,float M,float v,float w,float x)Sort( n,v,w);int i;for (i=1;i=n ;i+) xi=0; float c=M;for (i=1;ic) break;xi=1;c-=wi;if (i=n) xi=c/wi;(

15、2)动态规划法 0( nc)m(i , j)是背包容量为j,可选择物品为i, i+1 ,,n时0-1背包问题的最优值。由0-1背包问题的最优子结构性质,可以建立计算m(i , j)的递归式如下。m(i, j)maxm(i 1, j),m(i 1, j wj v j w:m(i 1, j) 0 j Wim(n, j)Vn j wn0 0 j wnvoid Kn apSack(i nt v,i nt w,i nt c,i nt n,i nt m11)/*m(n,j)=0 0=j=wn*/mij=mi+1j;for (j=wi;j=wn*/mij=max(mi+1j,mi+1j-wi+vi);m1c

16、=m2c;if(c=w1)m1c=max(m1c,m2c-w1+v1);(3)回溯法O(2n)cw: 当前重量cp: 当前价值 bestp :当前最优值void backtrack(int i)/ 回溯法 i 初值 1 if(i n) / 到达叶结点int jMax=min(wn-1,c);for (j=0;j=jMax;j+) mnj=0;for (j=wn;j1;i-) int jMax=min(wi-1,c);if(cw + wi bestp)/ 搜索右子树backtrack(i+1);七、算法设计题(本题 10 分)为了尽可能地逼近目标,我们选取的贪心策略为: 每一步总是选择一个使剩 下的数最小的数字删去, 即按高位到低位的顺序搜索, 若各位数字递增, 则删除 最后一个数字, 否则删除第一个递减区间的首字符。 然后回到串首, 按上述规则 再删除下一个数字。重复以上过程 s 次,剩下的数字串便是问题的解了。具体算法如下:输入s, n;while ( s 0 ) i=1; / 从串首开始找while (i length(n) & (ni1)& (n1= 0 )delete(n,1,1); / 删去串首可能产生的无用零 输出n;

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2