码迷,mamicode.com
首页 > 编程语言 > 详细

算法--动态规划

时间:2016-03-03 12:50:19      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:

  动态规划需要弄清楚两个问题,首先子问题的最优解,其次重叠子问题。首先来看下一个问题吧:

有3种硬币,对应的面值是1、2、4,如果要组成11元,最少需要几枚硬币呢?

思路:考虑组成0元,需要0枚硬币;f(0) = 0。这里设f(n)为组成n元最少需要的硬币数;

   考虑组成1元,需要1枚硬币,f(1) = 1;

   考虑组成2元,可以有:f(2) = min (f(1) + 1, f(0) + 1) = f(0) + 1= 1;

   考虑组成3元,可以有:f(3) = min (f(2) + 1, f(1) + 1) = f(1) + 1= 2;

算法--动态规划

标签:

原文地址:http://www.cnblogs.com/xiaer/p/5237925.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!