动态规划
来源:互联网 发布:淘宝卡dnf称号 编辑:程序博客网 时间:2024/04/30 09:24
动态规划 听课笔记 老师:郭炜
一、一般思路
1.将原问题分解为子问题
1)把原问题分解为若干个子问题,子问题和原问题形式相同或类似
,只不过规模变小了。子问题都解决,原问题即解决
2)子问题的解一旦求出就会被保存,所以每个子问题只需求解一次
2.确定状态
1)所有状态的集合,构成问题的状态
将和子问题相关的各个变量的一组取值,称之为一个状态
一个状态对应以一个或多个子问题
所谓某个状态的值,就是这个状态对应的问题的解
整个问题的时间复杂度是状态数目乘以每个状态所需的时间
3.确定一些初始状态(边界状态)的值
4.确定状态转移方程
如何从一个或多个“值”已知的状态,求出另一个状态的值(人人为我递推型)
二、能用动态规划解决的问题的特点
1.问题有最优子结构性质
如果问题的最优解所包含的子问题的解也是最优的,我们就称此问题具有最优子结构
2.无后效性
当前的若干个状态值一旦确定,则此后过程的演变就只和这若干个状态的值有关,和
之前是采取哪种手段或经过哪条路径演变到当前的这若干个状态,没有关系
一、一般思路
1.将原问题分解为子问题
1)把原问题分解为若干个子问题,子问题和原问题形式相同或类似
,只不过规模变小了。子问题都解决,原问题即解决
2)子问题的解一旦求出就会被保存,所以每个子问题只需求解一次
2.确定状态
1)所有状态的集合,构成问题的状态
将和子问题相关的各个变量的一组取值,称之为一个状态
一个状态对应以一个或多个子问题
所谓某个状态的值,就是这个状态对应的问题的解
整个问题的时间复杂度是状态数目乘以每个状态所需的时间
3.确定一些初始状态(边界状态)的值
4.确定状态转移方程
如何从一个或多个“值”已知的状态,求出另一个状态的值(人人为我递推型)
二、能用动态规划解决的问题的特点
1.问题有最优子结构性质
如果问题的最优解所包含的子问题的解也是最优的,我们就称此问题具有最优子结构
2.无后效性
当前的若干个状态值一旦确定,则此后过程的演变就只和这若干个状态的值有关,和
之前是采取哪种手段或经过哪条路径演变到当前的这若干个状态,没有关系
0 0
- 动态规划!!!动态规划!!!
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 13_为DOM元素设置样式
- es6学习笔记模块导入导出
- 粘性滑动-自定义StickinessView
- 14_事件
- java统计字符串中字母出现的次数
- 动态规划
- 15_使用元素专属对象
- Java Web开发SpringMVC和MyBatis框架开发环境搭建和简单实用
- 16-ajax
- 17_使用多媒体
- 最长增长子序列
- HDFS 常用shell命令
- 谈一谈几种处理JavaScript异步操作的办法
- iOS runtime的应用实例