欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    算法设计与分析期末备考知识点总结.docx

    • 资源ID:26437752       资源大小:13.82KB        全文页数:7页
    • 资源格式: DOCX        下载积分:30金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要30金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    算法设计与分析期末备考知识点总结.docx

    算法设计与分析期末备考知识点总结 通俗地讲,算法是解决问题的方法,严格地说,算法是对特定问题求解步骤的一种描述, 是指令的有限序列。 算法还必须满足一下五个重要特性:输入、输出、有穷性、确定性、可行性。 程序(Program)是对一个算法使用某种程序设计语言的具体实现,原则上,算法可以 用任何一种程序设计语言来实现。 什么是算法的计算复杂性? 算法分析指的是对算法所需要的两种计算机资源时间和空间(时间复杂性和空间复 杂性进行估算,所需要的资源越多,该算法的复杂性就越高。 表示计算复杂性的O你掌握了? 若存在两个正的常数c和n0,对于任意nn0,都有T(n)c×f(n),则称T(n)=O(f(n)(或称算法在O(f(n)中)。 我们主要介绍了哪几种算法设计方法? 分治法:将一个难以直接解决的大问题,分割成一些规模较小的子问题,以便各个击破,分而治之。 减治法:减治法在将原问题分解为若干个子问题后,利用了规模为n的原问题的解与较小规模(通常是n/2)的子问题的解之间的关系,这种关系通常表现为: (1)原问题的解只存在于其中一个较小规模的子问题中; (2)原问题的解与其中一个较小规模的解之间存在某种对应关系。 由于原问题的解与较小规模的子问题的解之间存在这种关系,所以,只需求解其中 一个较小规模的子问题就可以得到原问题的解。 动态规划法、贪心算法、回溯算法、概率 RAM程序 分治法-合并排序 设算法4.3对n个元素排序的时间复杂性为T(n),则该二路归并排序算法存在如下递推式: 二路归并排序的时间代价是O(nlog2n)。 所需空间只要O(m+n+min(m, n)的空间就够了(假设两个合并串的长度分别为m和n)。 分治法-快速排序 在最好情况下在具有n个记录的序列中,一次划分需要对整个待划分序列扫描一遍,则所需时间为O(n)。时间复杂度为O(nlog2n)。 在最坏情况下必须经过n-1次递归调用才能把所有记录定位,而且第i趟划分需要经过n-i 次关键码的比较才能找到第i个记录的基准位置,因此,总的比较次数为: 时间复杂度为O(n2) 分治法-最大子段 递推式:算法时间复杂度:O(nlog2n) 分治法-棋盘覆盖问题 T(k)满足如下递推式: 分治法-循环赛日安排问题 基本语句的执行次数是: 算法的其时间复杂性为O(4k)。 顺序统计问题: 算法找出n个元素中的第k个最小元素 输入:从一个有线性序的集合中抽出的n个元素的序列S及一个整数k,1kn。输出:S中的第k个最小元素 算法2 算法2的期望时间是O(n)。最坏情况O(n2) 减治-插入排序(手工题) 堆的概念: n个元素的序列K1,K2,.Kn,当且仅当满足 动态规划求解TSP问题 注:用动态规划解决TSP问题,算法的时间复杂性为O(n22n)。和蛮力法相比,动态规划法求解TSP问题,把原来的时间复杂性是O(n!)的排列问题,转化为组合问题,从而降低了算法的时间复杂性,但它仍需要指数时间。但遗 憾的是这一动态规划算法需要O(n2n)的空间。当n较大时,空间难以满足。多段图的最短路径算法: 1For (i=1; i=0; i-) 2.1 对顶点i的每一个邻接点j,根据 costi=mincij+costj (ijn且顶点j是顶点i的邻接点)计算costi; 2.2 根据pathi=使cij+costj最小的j 计算pathi; 3输出最短路径长度cost0; 4. 输出最短路径经过的顶点: 4.1 i=0 4.2 循环直到pathi=n-1 4.2.1 输出pathi; 4.2.2 i=pathi; 最优二叉查找树算法: 最优二叉查找树是以这n个记录构成的二叉查找树中具有最少平均比较次数的二叉查找树,即最小,其中pi是记录ri的查找概率,ci是在二叉查找树中查找ri的比较次数。 回溯法-解空间树的动态搜索过程 注:搜索过程中,采用两种策略避免无效搜索: 1.用约束条件剪去得不到可行解的子树; 2.用目标函数剪去得不到最优解的子树。 例一:对于n=3的0/1背包问题,三个物品的重量为20, 15, 10,价值为20, 30, 25,背包容量为25,从图8.2所示的解空间树的根结点开始搜索,搜索过程如下: (注:树枝左侧为1,右侧为0,1代表装包,0代表不装包,从上到下每一层代表一个物体) 例二:对于n=4的TSP问题,解空间树如下:代价矩阵C如下: 1.目标函数初始化为; 2.从结点1选择第1棵子树到结点2,表示在图中从顶点1出发; 3.从结点2选择第1棵子树到达结点3,表示在图中从顶点1到顶点2,依代 价矩阵可知路径长度为3; 4.从结点3选择第1棵子树到达结点4,表示在图中从顶点2到顶点3,依代 价矩阵可知路径长度为3+2=5; 5.从结点4选择唯一的一棵子树到结点5,表示在图中从顶点3到顶点4,路 径长度为5+2=7,结点5是叶子结点,找到了一个可行解,路径为12341,路径长度为7+3=10,目标函数值10成为新的下界,也就是目前的最优解; 6.从结点5回溯到结点4,再回溯到结点3,选择结点3的第2棵子树到结点6, 表示在图中从顶点2到顶点4,路径长度为3+8=11,超过目标函数值10,因此,对以结点6为根的子树实行剪枝; 搜索后的结果图: 回溯法-图着色问题的算法 用m种颜色为一个具有n个顶点的无向图着色 设数组colorn表示顶点的着色情况,回溯法求解m着色问题的算法如下: 回溯法-n皇后问题的算法

    注意事项

    本文(算法设计与分析期末备考知识点总结.docx)为本站会员(h****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开