百度百科定义:
动态规划(dynamic programming)是运筹学的一个分支,是求解决策过程(decision process)最优化的数学方法。20世纪50年代初美国数学家R.E.Bellman等人在研究多阶段决策过程(multistep decision process)的优化问题时,提出了著名的最优化原理(principle of optimality),把多阶段过程转化为一系列单阶段问题,利用各阶段之间的关系,逐个求解,创立了解决这类过程优化问题的新方法——动态规划。
教材上的定义:
概述:
动态规划程序设计是对解最优化问题的一种途径,一种方法,而不是一种特殊算法。
动态规划程序设计往往是针对一种最优化问题,由于各种问题的性质不同,确定最优解的条件也互不相同,因而不存在万能的规划算法。
在学习时出了要对基本概念和方法正确理解外,必须具体问题具体分析处理,以丰富的形象力去建立模型。

动态规划1

动态规划1 

动态规划1 

动态规划1 

之前在网上看到一个例子感觉有点启发:

*writes down "1+1+1+1+1+1+1+1="on a sheet of paper What's that equal to?
*counting*"Eight
*writes down another 1+"on the left*
*What about that?
*quickly* " Nine How 'd you know it was nine so fast?
*You just added one more
*So you didn't need to recount because you remembered there were eight! Dynamic Programming is just a fancy way to say 'remembering stuff to save time later

大致意思就是:

*在一张纸上写下“ 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 =“

“那等于什么?”

*数*“八!”

*在左侧写下另一个“ 1 +” *

“那个怎么样?”

*迅速*“九!”

“你怎么知道它快九点了?”

“您刚刚添加了一个”

“所以您不需要重新计数,因为您记得有八个!动态编程只是一种表达'记住东西以节省时间的奇妙方式'”

分类:

技术点:

相关文章: