算法剖析与的设计基本知识点点复习.pptVIP

  • 6
  • 0
  • 约7.11千字
  • 约 30页
  • 2017-04-01 发布于四川
  • 举报

算法剖析与的设计基本知识点点复习.ppt

算法剖析与的设计基本知识点点复习

渐近表示(P8) 渐进表示:是方便地表示算法的最坏情况下,计算的复杂度。 三个定义,三例题。 定义1.1如果存在三个正常数 第2章 分 治 法 递归(P13) 递归程序可被简单地定义为对自己的调用。 递归程序要求必须有终止条件。 斐波那契(Fibonacci)序列。 替换方法(P16) 用替换方法解某个递归方程时,分为两步。首先猜测问题解的某个界限,然后用数学归纳法证明所猜测解的正确性。 主方法(P18) 主定理(三种情况,三个例题) 第4章贪心法(p98) 贪心法的当前选择可能要依赖已经做出的所有选择,但不依赖于有待于做出的选择和子问题。 贪心法自顶向下,一步一步地做出贪心选择。 贪心法总是做出在当前时刻看起来最优的决策,即希望通过局部最优决策导致问题的全局最优解。 贪心法并不总是产生问题的全局最优解,但许多问题利用贪心法求解得到全局最优解。 * 算法 算法(algorithm)可以被定义为一个良定的计算过程,它具有一个或者若干输入值,并产生一个或者若干输出值。 人们采用一般术语陈述问题,确定输入/输出关系,而算法则是描述这种输入/输出关系的特定计算过程。 算法正确性:对每一个输入实例算法都能终止,并给出正确输出。 算法正确性有两个要素;1是能够终止。2是结果正确。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 算法设计和分析的步骤可概括: (1)问题的陈述。 (2)模型的选择。 (3)算法的设计。 (4)算法的程序实现。 (5)算法分析。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 算法具有以下五大特性 (1)确定性。一个算法中给出的每一个计算步骤,必须是精确的定义、无二义性的。 (2)有穷性。一个算法在执行有穷个计算步骤后必须停止。 (3)可行性。算法中要执行的每一个计算步骤都是可以在有限时间内做完的。可行性、有穷性和确定性是相容的。 (4)输入。一个算法一般都要求一个或多个输入信息。 (5)输出。一个算法一般有一个或多个输入信息。它们通常可以被解释成为“对输入的计算结果”。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 循环不变式具有以下三个性质: 初始:在循环的第一次迭代之前,循环不变式为真。 维持:如果在循环的某次迭代之前循环不变式为真,那么在下一次迭代之前,循环不变式仍然为真。 终止:当循环终止时,循环不变式给出有用性质,这个性质可以用于证明算法的正确性 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 循环不变式:A[j]是A[j..Length[A]]中的最小元素。 循环不变式:在1~4行外层for循环的每次迭代开始,子数组A[1..i-1]中的元素有序。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 算法分析(p4) 算法分析是指对一个算法所需的计算资源进行预测。 考虑算法的好坏主要有以下几点: (1)执行算法所耗费的时间。 (2)执行算法所耗费的存储空间,其中主要考虑辅助存储空间。 (3)算法应易于理解,易于编码,易于调试等。 最重要的计算资源是时间和空间资源(存储器)

文档评论(0)

1亿VIP精品文档

相关文档