摘要:
什么是动态规划? 先来看看《算法导论》里面的解释:动态规划(dynamic programming)与分治法相似,都是通过组合子问题的解来求解原问题。动态规划应用于子问题重叠的情况,即不同的子问题具有公共的子子问题。这种算法对每个子子问题只求解一次,将其解保存在一个表格中,从而无需每次求解一个子子问题时都重新计算,避免了不必要的计算工作。 设计一个动态规划算法需要4步: 1.描述最优解的结构。 2.递归定义最优解的值 3.按自底向上的方式计算最优解的值 4.由计算出的结果构造一个最优解。 这4步中的前3步是动态规划的基础,即前3步用自底向上的方法,从最底层的已经有解的子子问题... 阅读全文
posted @ 2013-11-15 13:02
joyingx
阅读(581)
评论(0)
推荐(0)

浙公网安备 33010602011771号