_中南大学算法考试试卷及答案.doc_第1页
_中南大学算法考试试卷及答案.doc_第2页
_中南大学算法考试试卷及答案.doc_第3页
_中南大学算法考试试卷及答案.doc_第4页
_中南大学算法考试试卷及答案.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中南大学考试试卷2008 - 2009学年 2学期 时间110分钟 算法分析与设计 课程 注:此页不作答题纸,请将答案写在答题纸上一、 基本概念题(本大题40分)1、 一般情况下,如何计算执行顺序、选择、循环、子过程调用结构的运算时间? (6分)2、 设T(n)=n,根据T(n)= O(f(n))的定义,下列等式是否成立? (4分) 1) T(n)= O(n2) 2) O(n2) = T(n)3) T(n)= O(log n)+ O(n)4) T(n) = O(n) *O(log n) 3、 与顺序查找算法相比,折半查找算法的时间复杂性有多大程度的降低?它是如何提高算法的效率的? (6分) 4、 简述归并排序算法和快速排序算法的分治方法。 (6分)5、 一般背包问题的贪心算法可以获得最优解吗?物品的选择策略是什么?(6分)6、 Prim算法和Dijkstra算法选择下一个节点的标准分别是什么?对于有负边的无向图,Prim算法和Dijkstra算法还能保证获得最优解吗? (6分)7、 比较回溯法和分支限界法的搜索方式,哪种方法更适合找最优解问题?(6分)二、 分析算法的时间复杂性,需要写出分析过程(本大题20分)1、 用分割元素v将有n个元素的数组分割成元素大于v和小于v的两部分,需要花多少时间(要讲出道理)。 (5分)2、 如果修改归并排序算法,将数组分成1/3和2/3大小不等的两部分,分别排序后再归并,算法的最坏时间复杂度有什么变化? (5分)3、 设函数f1、f2和f3的处理时间分别为O(n)、O(n2) 和O(1),分析下列流程的时间复杂性:1)基本结构procedure A1(int n,b) (4分) if b 3 (2分) O(1) n3 考虑n=3kT(n) = T(3k-1 )+ T(2*3k-1) +n-1 = T(3k-2 )+2T(2*3k-2 )+T(22*3k-2)+(n-1)+(n-2) = T(3k-3 )+3T(22*3k-3 )+ 3T(223k-3 )+T(233k-3)+(n-1)+(n-2) +(n-3)最后T(2i3 k-i)=O(1)时,2i3 k-i3T(n) (n-1)+(n-2) +(n-3)+.+(n-(k-1) =nk-(1+2+.+(k-1)) nlog3/2n (3分) 3、 设函数f1、f2和f3的处理时间分别为O(n)、O(n2) 和O(1),分析下列流程的时间复杂性:1)基本结构procedure A1(int n,b) (4分)T(n)=maxO(n),O(n2)+n* O(1) = O(n2) 2) 递归结构 设A2的时间为T(n)T(n)= T(n-1)+O(1) n1 = O(1) n3 (3分)T(n)=T(n-2)+2O(n) =. = T(1)+nO(n) = O(n2) (3分)三、 算法理解 (本大题24分)1、 在一个空间安排n =5个活动,开始时间和结束时间分别为。写出活动安排贪心算法的运行结果。1)按照结束时间排序(3分)8,10)1, 9, 11:30)3, 11:40,13)4,12,14)2, 13:30,15)52)可行解 1,4,5 (3分)2、 写出0/1背包问题的动态规划方程,并简要说明。 fi(X)maxfi-1(X),fi-l(Xwi)+pi 当Xwi (3分)fi(X)是前i个物品,背包容积 X子问题的最优值,当第i个物品不选入,fi(X)等于fi-1(X)前i-1个物品,背包容积 X子问题的最优值,当第i个物品不选入,得利润pi ,但前i-1个物品能使用背包为Xwi 。(3分)3、 修改图的m-着色的回溯算法,找到一个解,算法就结束。 (6分) Mcolor(n)k1; xk 0; While k0 do (2分) xk xk+1; while place(k)=false and xkm doxk xk+1if xkm then (2分)if k=n then print x Return (2分) else k k+1 xk0 else k k-1 4、 用分支限界法解0/1背包问题,若物品i选入,则xi=1,否则xi=0。如何选用上下界函数? (6分)1) 物品按照利润重量比排序,背包的剩余体积cu,已得利润s。(2分)2) 下界估值函数:-(s+XjPj),当Xjwj=cu,0Xj1,j=i,n (2分)3) 上界函数:-(s+XjPj),当Xjwjcu,Xj0, 1 j=i,n(2分) 四、 算法设计 (本大题16分)对于给定的无向图G=(V,E), 分别设计具有下列功能的深度优先算法。1) 判断图是否为连通图 (8分)procedure DFS_Visit(G,u) 1 coloruGray 2 for each edge(u,v) do 2-1 if colorv=White then DFS_Visit(G,v) 3 coloruBlack; (2分)procedure DFS(G) 1 for each vertex uV do 2 coloruWhite 3 f 0 3 for vertex each uV do if coloru=White then DFS_Visit(G,u) (3分) ff +1 4 if f=1 then print “Yes” (3分) else print “No”2) 判断图是否存在环 (8分)procedure DFS_Visit(G,u) 1 coloruGray 2 for each edge(u,v) do 2-1 if colorv=White then DFS_Visit(G,v) 2-1 if colorv= Gray then f 1 return3 coloruBlack (2分)procedure DFS(G) 1 for each vertex uV do 2 coloruWhite f 0 3 for vertex each uV do if c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论