《agorithm.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《agorithm

1.概述 1.1算法 算法是指解决问题的一种方法或过程。 算法是由若干条指令组成的有穷序列 算法满足性质: (1)输入: (2)输出: (3)确定性: (4)有限性: 1.2算法与程序 程序是算法用某种程序设计语言的具体实现。 程序可以不满足算法的有限性性质。 例如:操作系统,是一个在无限循环中执行的程序,因而不是一个算法。 操作系统的各种任务可看成是单独的问题,每一个问题由操作系统中的一个子程序通过特定的算法来实现。该子程序得到输出结果后便终止。 算法复杂性C依赖于问题规模N、算法输入I和算法本身A。 1.3函数渐进界 (1) f(n)=O(g(n)) 若存在正数c和n0使得对一切n≥n0有0≤f(n)≤cg(n) (2) f(n)= Ω(g(n)) 若存在正数c和n0使得对一切n≥n0有0≤cg(n)≤ f(n) (3) f(n)=o(g(n)) 对任意正数c存在n0使得对一切n≥n0有0≤f(n)cg(n) (4) f(n)=ω(g(n)) 对任意正数c存在n0使得对一切n≥n0有0≤cg(n)f(n) (5) f(n)=Θ(g(n)) ? f(n)=O(g(n)) 且f(n)=Ω(g(n)) 设f , g, h 是定义域为自然数集N上的函数: (1)如果f =O(g)且g=O(h),那么f =O(h). (2)如果 f =Ω(g)且g=Ω(h),那么f =Ω(h). (3)如果f =Θ(g)和g=Θ(h),那么f =Θ(h). (4) O(f(n))+O(g(n)) = O(max{f(n),g(n)}) (5) O(f(n))+O(g(n)) = O(f(n)+g(n)) (6) O(f(n))*O(g(n)) = O(f(n)*g(n)) 设f , g, h 是定义域为自然数集N上的函数,若对某个其它的函数h, 我们有f =O(h)和g=O(h),那么 f + g = O(h). 假设f 和g是定义域为自然数集合的函数,且满足g=O(f),那么 f +g=Θ(f). 分治法 2.1 问题特征 分治法所能解决的问题一般具有以下几个特征: 该问题的规模缩小到一定的程度就可以容易地解决; 该问题可以分解为若干个规模较小的相同问题,即该问题具有最优子结构性质; 利用该问题分解出的子问题的解可以合并为该问题的解; 该问题所分解出的各个子问题是相互独立的,即子问题之间不包含公共的子问题。 2.2递推方程 2.3整数划分 最后一种情况,分两种, (a). 划分中包含m的情况,即{m, {x1,x2,...xi}}, 其中{x1,x2,... xi} 的和为n-m,可能再次出现m,因此是(n-m)的m划分,因此这种划分个数为f(n-m, m); (b). 划分中不包含m的情况,则划分中所有值都比m小,即n的(m-1)划分,个数为f(n,m-1); 因此 f(n, m) = f(n-m, m)+f(n,m-1); 2.4汉诺塔问题 首先把A 柱上面的n- 1 个碟子通过C 柱移到B 柱上【T(n-1)步】,然后把A 柱剩下的一个碟子移到C 柱上【1步】, 最后把B 柱上所有的碟子通过A 柱移到C 柱上【T(n-1)步】。很容易得到算法的递归方程为:T(n)=2*T(n-1)+1, 2.5二分搜索法 2.6棋盘覆盖 在一个2k×2k 个方格组成的棋盘中,恰有一个方格与其它方格不同,称该方格为一特殊方格,且称该棋盘为一特殊棋盘。在棋盘覆盖问题中,要用图示的4种不同形态的L型骨牌覆盖给定的特殊棋盘上除特殊方格以外的所有方格,且任何2个L型骨牌不得重叠覆盖。 2.7合并排序 2.8线性时间选择 2.9循环赛日程表 2.10快速排序 3.动态规划 3.1基本步骤,要素 要素基本步骤 (1)找出最优解的性质,并刻画其结构特征。 (2)递归地定义最优值。 (3)以自底向上的方式计算出最优值。 (4)根据计算最优值时得到的信息,构造最优解。 最优子结构 重叠子问题 备忘录(表格) 3.2矩阵连乘问题 3.3最长公共子序列 递推方程: 算法时间复杂度: 构造最优解算法复杂度:b,存储当前位置是怎么生成的(1,2,3)三个选项 3.4凸多边形最优三角剖分 与矩阵连乘一样 3.5多边形游戏 3.6图像压缩问题 B代表该段每个像素需要几位表示。 每段最大像素个数为256,“+11”是头文件,记录该段共有几个元素,都是用几位二进制表示的 从后往前划分 3.6最大子段和问题 3.7投资问题 3.8 0-1背包 3.9 0-N背包 3.10 最优二叉搜

文档评论(0)

lisufan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档