动态规划(Dynamic Programming,DP),简称动规,或DP,是运筹学的一个分支,是求解决策过程最优化的过程。其思想是将一个问题分解为若干个子问题,对每个子问题求最优解,前一个子问题的最优解,为下面的子问题提供了有效信息,依次解决子问题,最后一个子问题就是初始问题的最优解。动态规划应用于子问题重叠的情况,子问题的划分是通过递归实现。为了避免子问题的重复计算,保证每个子问题只求解一次,会将解保存在数组中。
动态规划的应用极其广泛,包括工程技术、经济、工业生产、军事以及自动化控制等领域,蓝桥杯ACM等竞赛当中,广泛在背包问题、生产经营、资金管理问题、资源分配问题、最短路径问题和复杂系统可靠性等问题背景中使用,是算法竞赛中的份量极高的算法之一
序号 | 标题 |
---|---|
1 | 动态规划DP算法详解 |
2 | 什么是动态规划? |
3 | 动态规划概念和实例讲解 |
4 | 什么是记忆化搜索? |
5 | 记忆化搜索实例讲解 |
6 | 超详细背包DP九讲(算法分析+问题分析+代码分析) |
7 | 区间DP实例讲解 |
8 | DAG上的DP实例讲解 |
9 | 树形DP概念和实例讲解 |
10 | 数位DP概念和实例讲解 |
11 | 什么是状态压缩DP? |
12 | 状态压缩DP图文实例讲解(一) |
13 | 状态压缩DP图文实例讲解(二) |
14 | 什么是哈希? |
15 | 插头DP图文实例讲解 |
16 | 计数DP实例讲解 |
17 | 什么是概率DP? |
18 | 概率DP实例讲解 |
19 | 什么是线性DP? |
20 | 线性DP图文实例讲解 |
21 | 动态DP实例讲解 |
22 | DP优化(一)单调队列/单调栈优化实例讲解 |
23 | DP优化(二)斜率优化实例讲解 |
24 | DP优化(三)四边形不等式优化实例讲解 |
题号 | 标题 | 解决/提交 | ||
---|---|---|---|---|
1177 | 三角形 | 中等题 | 2944/2944 | |
1255 | 蓝桥杯算法提高-能量项链 | 中等题 | 2890/2890 | |
1280 | 找啊找啊找GF | 中等题 | 145/145 | |
1281 | 乘法游戏 | 中等题 | 0/0 | |
1282 | 公交汽车 | 中等题 | 1394/1394 | |
1283 | [NOIP2001]装箱问题 | 中等题 | 582/582 | |
1290 | 奶牛的锻炼 | 中等题 | 137/137 | |
1301 | 尼克的任务 | 中等题 | 88/88 | |
1305 | 老管家的忠诚 | 中等题 | 90/90 | |
1311 | 数字三角形 | 中等题 | 715/715 | |
1312 | 最大的算式 | 中等题 | 57/57 | |
1313 | 字符串的距离 | 中等题 | 79/79 | |
1314 | 乘积最大 | 中等题 | 99/99 | |
1316 | 最长不下降子序列的长度 | 中等题 | 589/589 | |
1317 | 最长公共子序列lcs | 中等题 | 465/465 | |
1318 | 选课 | 中等题 | 51/51 | |
1319 | 没有上司的晚会 | 中等题 | 46/46 | |
1322 | 沙子合并 | 中等题 | 123/123 | |
1328 | 移动服务员 | 中等题 | 18/18 | |
1329 | 合并傻子 | 中等题 | 41/41 | |
1331 | 新三国争霸 | 中等题 | 38/38 | |
1340 | [NOIP2003]加分二叉树 | 中等题 | 33/33 | |
1342 | 硬币游戏 | 中等题 | 40/40 | |
1343 | 数字三角形2 | 中等题 | 39/39 | |
1345 | 删数 | 中等题 | 39/39 |