算法设计与分析复习要点(学生版)_第1页
算法设计与分析复习要点(学生版)_第2页
算法设计与分析复习要点(学生版)_第3页
算法设计与分析复习要点(学生版)_第4页
全文预览已结束

下载本文档

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

文档简介

1、算法设计与分析复习要点一、单项选择题(本大题共15小题,每小题2分,共30分)二、填空题(本大题共15空,每空1分,共15分)三、分析题(本大题共5小题,每小题5分,共25分)四、综合题(本大题共4小题,1、2题每题6分,3题8分,4题10分,共30分)第2章,导引与基本数据结构:什么是算法, 算法的5个特性;对一个算法作出全面分析的两个阶段。P24O(g(n),(g(n),Q(g(n)的含义。多项式时间算法:可用多项式(函数)对其计算时间限界的算法。 常见的多项式限界函数所表示算法时间复杂度的排序: (1) <(logn) < (n) < (nlogn) < (n2)

2、 < (n3)Ø 指数时间算法:计算时间用指数函数限界的算法 常见的指数时间限界函数: (2n) < (n!) < (nn)什么是算法的复杂性:是该算法所需要的计算机资源的多少,它包括时间和空间资源。复习栈和队列、树、图的基本知识,了解二元树、完全二元树,满二元树、二分检索树、了解图的邻接矩阵和邻接表存储方法。能写出图的深度优先序列和广度优先序列。会求如下一些简单的函数的上界表达式:3n2+10n =O(n2)第3、4章 递归与分治算法理解递归算法的优缺点,深刻理解递归算法的执行过程。如能写出解决n阶汉诺塔问题的解,并能分析写出3阶汉诺塔问题的递归执行轨迹。递归算法

3、的优点:结构清晰,可读性强,容易用数学归纳法来证明算法的正确性,因此它为设计算法、调试程序带来很大方便。递归算法的缺点:运行效率较低,耗费的计算时间和占用的存储空间都多。为了达到此目的,根据具体程序的特点对递归调用工作栈进行简化,尽量减少栈操作,压缩栈存储空间以达到节省计算时间和存储空间的目的。能求解或证明常见递归关系式,如n阶汉诺塔问题的算法时间复杂度。分治法的基本思想:是将一个规模为N的问题分解为K个规模较小的子问题,这些子问题互相独立且与原问题相同。递归地解这些子问题,然后将各子问题的解合并得到原问题的解。掌握二分检索算法,如给一个实例,可以模拟出low,hig,mid的运行轨迹。知道并

4、能证明二分检索算法平均时间复杂度是Q( logn)掌握找最大和最小元素的递归分治算法。理解并掌握归并分类(归并排序)算法,能画出用二元树表示的归并分类调用过程及合并过程。理解并能证明归并分类算法的时间复杂度。合并排序的时间复杂度是:T(n)=O(nlogn)。利用该递归式求取合并排序算法时间复杂度的上界。理解并掌握快速分类(快速排序)算法,给定一个未排序数组,能分步写出快速分类中划分的执行过程。理解快速分类算法的时间复杂度。快速排序的时间复杂度是:T(n)=O(nlogn)本章作业:1、写出用分治法求解循环赛日程表的完整程序。程序语言任意,但必须能上机运行。2、p99-4.22、P99-4.3

5、根据4.2节开始所给出的二分检索策略,写一个二分检索的递归过程。3、P99-4.5作一个“三分”检索算法,它首先检查n/3处的元素是否等于某个x的值,然后检查2n/3处的元素。这样,或者找到x,或者把集合缩小到原来的1/3。分析此算法在各种情况下的计算复杂度。第5章 贪心方法贪心方法:是根据具体的问题, 选取一种量度标准,按此标准对n个输入进行排序, 然后按该顺序一次输入一个量. 如果这个输入量和当前的部分最优解加在一起不能产生一个可行解, 则不把此输入量加入到这个部分解中, 这种能够得到某种量度意义下的最优解的分级处理方法就是贪心方法。贪心选择性质:指所求问题的整体最优解可以通过一系列局部最

6、优的选择。贪心算法的基本要素:贪心选择性质和最优子结构性质。掌握背包问题的贪心解法,分别以重量、效益值,单位重量效益值为最优量度所得最优解的比较。三元归并模式的贪心解法和证明,能画出3元归并树单源点最短路径的贪心解法,算法执行运行踪迹。如:给出一个带权图,能将下表的运行踪迹图补充完整迭代S选取的结点udist2dist3dist4dist5置初值1-10maxint30100123作业:P121: 5.2、5.12第6章 动态规划将问题分解成多级或许多子问题,然后顺序求解子问题,前一个子问题的解为后一个子问题的求解提供有用的信息。最优子结构性质:该问题的最优解包含着其子问题的最优解。动态规划算

7、法的基本要素:最优子结构性质和子问题重叠性质。理解并掌握多段图的动态规划求解过程,包括递推步骤。如,下面是一个多段图问题,为了求出源点s到终点t的最短距离,假设用cost(i)表示节点i到终点t的距离(节点i是指下图中圆圈中的数字为i的结点)。试根据cost(i)的含义用动态规划的方法求出该多段图问题的解。(要求根据cost(i)的含义,用递推的方法写出求解步骤,得到结果)理解并掌握0/1背包问题的动态规划求解过程,会采用序偶直接解n值不大的0/1背包问题。第8章 回溯法回溯法:是一个既带有系统性又带有跳跃性的搜索算法。这在问题的解空间树中,按深度优先策略,从根结点出发搜索解空间树。算法搜索至

8、解空间树的任一结点时,先判断该结点是否包含问题的解。如果肯定不包含,则跳过对以该结点为根的子树的搜索,逐层向其祖先结点回溯;否则,进入该子树,继续按深度优先策略搜索。理解回溯法的基本思想,掌握状态空间树的画法及各种含义。掌握n皇后问题的算法及执行踪迹。能画出0/背包问题的状态空间树及子集树。回溯法效率的因素:(1)产生xk的时间。(2)满足显约束的xk值的个数。(3)计算约束函数constraint的时间。(4)计算上界函数bound的时间。(5)满足约束函数和上界函数约束的所有xk的个数第9章 分支限界法(了解)分支限界法的基本思想:(1)分支限界法常以广度优先或以最小耗费(最大效益)优先的方式 搜索问题的解空间树。(2)在分支限界法中,每一个活结点只有一次机会成为扩展结点。活结点一旦成为扩展结点,就一次性产生其所有儿子结点。在这些儿子结点中,导致不可行解或导致非最优解的儿子结点被舍弃,其余儿子结点被加入活结点表中。(3)此后,从活结点表中取下一结点成为当前扩展结点,并重复上述结点扩展过程,这个过程一直持续到找到所需的解或活结点表这空时为止。最常见的分支限界法有两种:队

温馨提示

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

评论

0/150

提交评论