您当前的位置: 首页 >  动态规划
  • 0浏览

    0关注

    1477博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

动态规划是什么

软件工程小施同学 发布时间:2021-08-12 16:40:11 ,浏览量:0

 

 

 

 

 

英文dynamic programming,中文动态规划,给人一种很宏大的感觉。但其实对所谓动态和规划都没有那么深的体现,可以简单得理解为是对传统递归的一种优化。

这里programming不是编程的意思,而是决策。但这种决策不是一下就出来的,而是一步步(multistage)积累出来。换句话说我们需要一个决策,但这个决策太大了,我们做不了,所以需要把他递归到我们可以简单做出决策的状态,然后从这些状态开始,慢慢的“动态地”演进到最终的决策。

在DP的实践中很重要的就是递推关系和边界条件。所谓边界条件就是最简单的情况,所谓递推关系就是如果你已经知道这么多,再多给你一个,你怎么得到。 说一个最最最简单的例子,找出一个数组中的最大值。这个问题边界条件是什么呢,就是如果只有一个元素,那最大值就是他;递推关系是什么,就是你已经知道当下最大的数,再多给你一个数你怎么办。你会拿这个数和当下最大的数去比,其中较大的那个就是新的最大的数。这就是典型dp的思想。所以不要把DP看的过于高深就好了

作者:floatingH2O 链接:https://www.zhihu.com/question/39948290/answer/83920614 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

作者:floatingH2O 链接:https://www.zhihu.com/question/39948290/answer/83920614 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

https://www.zhihu.com/question/39948290

关注
打赏
1665320866
查看更多评论
立即登录/注册

微信扫码登录

0.0450s