动态规划汇总

简介: 动态规划汇总

简介

动态规划(Dynamic Programming,DP)是运筹学的一个分支,是求解决策过程最优化的过程。每次决策依赖于当前状态,又随即引起状态的转移。一个决策序列就是在变化的状态中产生出来的,所以,这种多阶段最优化决策解决问题的过程就称为动态规划。

优势场景

适用场景

最优化原理:假设问题的最优解所包括的子问题的解也是最优的,就称该问题具有最优子结构,即满足最优化原理。

无后效性:即某阶段状态一旦确定。就不受这个状态以后决策的影响。也就是说,某状态以后的过程不会影响曾经的状态。仅仅与当前状态有关。

有重叠子问题:即子问题之间是不独立的,一个子问题在下一阶段决策中可能被多次使用到(该性质并非动态规划适用的必要条件,可是假设没有这条性质。动态规划算法同其它算法相比就不具备优势)。

大致步骤

一,状态定义。 二,转移方程 。 三,初始状态。 四,填表顺序。 五,返回值。

博文合集

字符串dp

C++动态规划算法的应用:得到 K 个半回文串的最少修改次数 原理源码测试用例

动态规划 多源路径 字典树 LeetCode2977:转换字符串的最小成本

动态规划】【字符串】C++算法:正则表达式匹配

【动态规划】C++算法:最长有效括号

【动态规划】C++算法:44 通配符匹配

【动态规划】【字符串】扰乱字符串

【动态规划】【字符串】132.分割回文串 II

【动态规划】【字符串】C++算法:140单词拆分

【动态规划】【滑动窗口】C++算法:3003 执行操作后的最大分割数量

【动态规划】【 数学】C++算法:514自由之路

【动态规划】 【字典树】C++算法:472 连接词

动态规划】【二分查找】C++算法 466 统计重复个数

【动态规划】【记忆化搜索】【C++算法】664. 奇怪的打印机

数论组合数学dp

【动态规划】LeetCode2552:优化了6版的1324模式

【动态规划】LeetCode2111:使数组 K 递增的最少操作次数

map|动态规划|单调栈|LeetCode975:奇偶跳

【动态规划】C++算法:115.不同的子序列

【动态规划】C++算法312 戳气球

【动态规划】C++算法:446等差数列划分 II - 子序列

【动态规划】C++算法:403.青蛙过河

【动态规划】C++ 算法458:可怜的小猪

【动态规划】【记忆化搜索】C++算法:546移除盒子

【动态规划】【滑动窗口】【C++算法】 629K 个逆序对数组

【动态规划】【C++算法】639 解码方法 II

矩阵

【动态规划】【矩阵快速幂】【滚动向量】C++算法552. 学生出勤记录 II

数位dp

C++数位动态规划算法:统计整数数目 详细

【数位dp】【动态规划】C++算法:233.数字 1 的个数

图论dp、树形dp

动态规划】【广度优先】LeetCode2258:逃离火灾

【map】【动态规划】LeetCode2713:矩阵中严格递增的单元格数

【动态规划】【广度优先搜索】LeetCode:2617 网格图中最少访问的格子数

【动态规划】【 矩阵】【逆向思考】C++算法174地下城游戏

【动态规划】【矩阵】C++算法329矩阵中的最长递增路径

【动态规划】【C++算法】741摘樱桃


扩展阅读

视频课程

有效学习:明确的目标 及时的反馈 拉伸区(难度合适),可以先学简单的课程,请移步CSDN学院,听白银讲师(也就是鄙人)的讲解。

https://edu.csdn.net/course/detail/38771

如何你想快

速形成战斗了,为老板分忧,请学习C#入职培训、C++入职培训等课程

https://edu.csdn.net/lecturer/6176

相关

下载

想高屋建瓴的学习算法,请下载《喜缺全书算法册》doc版

https://download.csdn.net/download/he_zhidan/88348653

测试环境

操作系统:win7 开发环境: VS2019 C++17

或者 操作系统:win10 开发环境: VS2022 C++17

如无特殊说明,本算法用**C++**实现。

相关文章
|
5月前
|
算法 测试技术 C++
|
5月前
|
C++ NoSQL 容器
动态规划三
动态规划三
|
5月前
|
机器人 NoSQL 容器
动态规划一
动态规划一
|
5月前
|
存储 JavaScript 机器人
动态规划问题
动态规划问题
33 0
|
5月前
动态规划1
动态规划1
32 0
动态规划1
|
存储
【动态规划】
【动态规划】
|
定位技术
动态规划题:夺宝奇兵
动态规划题:夺宝奇兵
83 0
动态规划-子序列问题
前言 在上篇文章我们学习了动态规划的公共子序列问题,现在我们来学习下动态规划的单字符串子序列问题。
朝题夕解之动态规划(2)
朝题夕解之动态规划(2)
109 0
朝题夕解之动态规划(2)