动态规划--基本思路理念
动态规划–基本思路理念
动态规划的解题思路是:
首先将原问题分解成一个个合理的子问题。
怎样算合理呢?
要求子问题的最优值可以由更小规模的子问题的最优值推导出来。
之后就有了DP状态和DP转移方程的概念
1.DP状态(要求:最优子结构、无后效性)即子问题的最优值 f[i]
(1)最优子结构是指:原问题取到最优解时其子问题也取到了最优解。每一个子问题的最优值,都是由其更小规模的子问题的最优值推导而来。
(2)无后效性:原问题的最优值,只与子问题的最优值有关(就那个数值),与子问题最优值如何计算得来的无关,也就是说,子问题只能有一因素影响原问题的最优值,就是它的最优值的那个数值。不许再有其他因素产生影响了。否则就是有后效性。
2.DP状态转移方程
细心推导出,f[i]由f[i-1]能够推导出来的所有情况。
即采用“分类讨论”的思想枚举所有小状态向小状态转移的可能性。
其实动态规划就是一种枚举,只不过动态规划的问题比较复杂,需要一步一步地去解决问题,每一步都要进行几乎相同的枚举过程。(原问题和子问题的解题方法是一样)
之后整理一下动态规划问题都有哪些类别。
动态规划--基本思路理念相关推荐
- 6. 最短路径:一通百通的秘密,动态规划设计思路
6. 最短路径:一通百通的秘密,动态规划设计思路 动态规划设计思路 Dijkstra:慢速版 DP + BFS.快速版 DP + BFS + 贪心 Bellman-Ford:DP + 穷举 Floyd ...
- 动态规划解题思路与总结(三万字)
动态规划 前言 手把手如何写动态规划 最长路径 网格 最长上升子序列问题 求最长上升子序列 最长非严格递增子序列 至少修改多少次能将序列变为上升序列 最长公共上升子序列 分级问题 移动服务 传纸条 排 ...
- 动态规划-----(思路详解)
动态规划 引入–-递推(斐波那契数列) 1 1 2 3 5 8 13 后一个数等于前两个数的和 f(1)=1,f(2)=1 f(n)=f(n-1)+f(n ...
- 动态规划解题思路总结归纳(一)
一.动态规划的三大步骤 定义:动态规划,无非就是利用历史记录,来避免我们的重复计算.而这些历史记录,我们得需要一些变量来保存,一般是用一维数组或者二维数组来保存 步骤一:定义数组元素含义,例如定义一个 ...
- 【LeetCode笔记】221. 最大正方形(Java、动态规划、思路题)
文章目录 题目描述 思路 & 代码 更新版 题目描述 显而易见地可以用dp来写,问题在于如何考虑状态转移方程 思路 & 代码 首先再加一层外墙,就不用边界判断了 maxSqure[i] ...
- 7-6 0-1背包 (20 分)(思路加详解+网格做法+动态规划)Come Baby !!!!!!!!!!!!!!
一:题目 给定n(n<=100)种物品和一个背包.物品i的重量是wi,价值为vi,背包的容量为C(C<=1000).问:应如何选择装入背包中的物品,使得装入背包中物品的总价值最大? 在选择 ...
- 《跟我学算法系列文章——一文吃透动态规划》
<一文吃透动态规划--Dynnamic Planning> 关键词:DP算法 面试 最值问题 子序列问题 子数组问题 回文问题 回溯算法 文章目录 <一文吃透动态规划--Dynnam ...
- 【直播】李祖贤:集成学习答疑直播之五 -- 常用集成思路
集成学习答疑直播之五 – 常用集成思路 集成学习 是首个横跨3个周期的长期组队学习,在 第24期组队学习 中进行到"第二期-模型集成思路"阶段.组队学习期间,课程设计者每周针对 ...
- 计算机解决问题没有奇技淫巧,但动态规划还是有点套路
作者 | labuladong 来源 | labuladong(ID:labuladong) [导读]动态规划算法似乎是一种很高深莫测的算法,你会在一些面试或算法书籍的高级技巧部分看到相关内容,什么 ...
最新文章
- PingCode Wiki ——国内最顶级的产研团队知识库产品介绍
- JavaAgent 简单例子
- TabControl控件和TabPage
- SpringBoot之基础
- 前端学习(2034)vue之电商管理系统电商系统之绘制图表
- VLC测试IPv4 IGMP/IPv6 MLD协议
- CentOS8.1 搭建jenkins
- python怎么导入数据集keras_python – 如何为Keras准备数据集?
- 编写一个2分10秒的倒计时脚本
- xkcd目录_12条展示AI真相的XKCD片段
- 中标2020中国联通数据设备集采项目,中兴通讯备受鼓舞
- 激光雷达的障碍物检测
- PS之人物高低频磨皮
- 哀悼日很多网站都变成了灰色,这是怎么做到的?
- python ImportError: No module named spiders
- funny_upload
- linux执行lsof命令_linux系统 lsof命令详解
- 移动应用性能测试简介
- 如何阅读AI顶会论文?
- Mac book笔记本输入法错乱