Java教程

算法与程序设计(三):动态规划算法

本文主要是介绍算法与程序设计(三):动态规划算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录

一、概念

1.1 动态规划算法的基本要素

1.2 动态规划算法的步骤

二、举例

2.1 矩阵连乘问题

2.1.1 穷举法

2.1.2 动态规划法

2.1.3 例题

2.2 图像压缩问题

2.3 最大子段和问题


一、概念

        动态规划是运筹学的一个分支,是求解多阶段决策过程最优化问题的数学方法,在经济管理、工程技术、工农业生产及军事部门中都有着广泛的应用,并且获得了显著的效果。

1.1 动态规划算法的基本要素

  1. 最优子结构性质
  2. 重叠子问题性质

1.2 动态规划算法的步骤

  1. 找出最优解的性质,并刻画其结构特征
  2. 递归定义最优值
  3. 以自底向上的方式计算出最优值
  4. 根据计算最优值时得到的信息,构造最优解

二、举例

2.1 矩阵连乘问题

2.1.1 穷举法

2.1.2 动态规划法

 

 

2.1.3 例题

设有四个矩阵A,B,C,D,它们的维数分别是A=2×4 B=4×3 C=3×5,D=5×2,使用动态规划法求其最优解和最优加括号方法。


2.2 图像压缩问题

 

 


2.3 最大子段和问题

 

例题


算法与程序设计的复习嘻嘻嘻蟹蟹٩('ω')و 

这篇关于算法与程序设计(三):动态规划算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!