您的位置:首页 > 理论基础

经典计算机算法设计方法(4) -- 动态规划之一(理论篇)

2014-08-07 12:59 281 查看
跟分治法类似的是,动态规划也是通过组合子问题的解而解决整个问题的,不同的是,分治把问题划分为一些独立的子问题,但动态规划适用的是子问题不独立的情况,也就是子问题包含公共的子子问题。

动态规划通常应用于最优化问题,这些问题往往有很多个解,即使是最优解也可能有多个,所以动态规划的某种应用只是找出了一个最优解。动态规划算法的设计可以分为下面4个步骤:

1, 描述最优解的结构

2, 递归定义最优解的值;

3, 按自底向上的方式计算最优解的值;

4, 由计算出的结果构造一个最优解;

第四步不是必须的。如果需要最优解,则可能需要在第三步记录一些附加信息,使构造一个最优解更容易。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: