动态规划法PPT
动态规划(Dynamic Programming,DP)是一种在数学、计算机科学和经济学中使用的,通过把原问题分解为相对简单的子问题的方式来求解复杂问题的...
动态规划(Dynamic Programming,DP)是一种在数学、计算机科学和经济学中使用的,通过把原问题分解为相对简单的子问题的方式来求解复杂问题的方法。动态规划常常适用于有重叠子问题和最优子结构特性的问题。基本思想动态规划的基本思想是将待求解的问题分解成若干个相互联系的子问题,先求解子问题,然后从这些子问题的解得到原问题的解。由于子问题数目往往远少于原问题的规模,因此动态规划法可以显著减少计算量。特点最优子结构如果问题的最优解所包含的子问题的解也是最优的,就称该问题具有最优子结构性质子问题重叠子问题重叠性质是指在用递归算法自顶向下对问题进行求解时,每次产生的子问题并不总是新问题,有些子问题会被重复计算多次步骤描述问题的最优解的结构即如何根据子问题的最优解来构造原问题的最优解递归地定义最优解写出状态转移方程计算最优解通过自底向上的方式计算最优解构造最优解通过计算得到的信息,构造出原问题的最优解应用动态规划的应用非常广泛,包括但不限于背包问题、最短路径问题、资源分配问题、设备更新问题、生产调度问题、电路布线问题、字符串匹配问题、序列比对问题等。结论动态规划是一种有效的求解复杂问题的方法,通过分解问题,避免重复计算,提高了计算效率。然而,动态规划也需要仔细分析问题的结构,正确地定义子问题和状态转移方程,才能有效地应用。