计算机算法基础教学课件ppt作者沈孝钧第6章-PPT-N2课件.pptxVIP

  • 19
  • 0
  • 约6.14千字
  • 约 40页
  • 2017-03-07 发布于未知
  • 举报

计算机算法基础教学课件ppt作者沈孝钧第6章-PPT-N2课件.pptx

计算机算法基础教学课件ppt作者沈孝钧第6章-PPT-N2课件.pptx

第 6 章 动态规划(dynamic Programming)6.1 基本原理和分治法一样,把大问题分为较小问题来解决,但分解的方法不同。分治法在一开始就要决定如何分解,而且每层递归都必须遵循一样的分解规则,称为由顶向下的方法,但极不灵活。有些问题在不同规模或不同输入数据时,最佳的划分也许会不同。这时,分治法无法给出最佳结果或复杂度会很高。动态规划考虑所有可能的分解,并且在分解时,所有须要用到的子问题的最佳解都已在前面步骤中获得,所以动态规划须先解决所有子问题,是一个由下向上的方法。6-1做法:初始化。把输入数据分解到最小单位,并对其做出解答。这是个解的集合,称为初始解集合,他们作为基础或边界条件以使更大规模的问题解可以在他们之上建立。用S0 表示这个初始集合,亦称初始条件。2 从下向上归纳用集合S0,S1,…,Si 中的解来计算集合Si+1 (i ≥ 0)。Si+1中每个解比Si 中解规模更大。归纳进行到规模为n的解产生为止。要求S0,S1,…,Si , … 中任何一个解,都必须是最优解。这是动态规划的最重要特点。找出Si+1中解和S0,S1,…,Si 中解的关系是关键。表示这个关系的公式称为归纳公式。6-26.2 矩阵连乘问题这是用动态规划解题的一个著名例子。矩阵A和B的维数分别是 r ? s 和 s ? t 的话, 计算C = AB 须要作 r ? s ? t 次乘法,而

文档评论(0)

1亿VIP精品文档

相关文档