
动态规划
文章平均质量分 89
动态规划思想,以及基本题型
ReL1FE.
倒了
展开
-
背包型动态规划
背包问题算是很经典的动态规划题型了,刚开始接触很容易想当然的用贪心来做…但是很容易能够举出反例。大致可以分为01背包、多重背包和完全背包。01背包题目内容:给定一个容量为w的背包和n个重量不同的物体,每个物体只能使用一次,问有多少种填满背包的方案。思路:从最后一个物体n开始考虑,要使背包装的重量为w,有两种情况:①背包无法装入n,则前n个物体能装满背包的最大方案数等于前n-1个物体能装满背包的最大方案数。②背包能够装入n,此时考虑前n个物体能装满背包的最大方案数等于{前n-1个物体能装满背包的最原创 2021-04-17 09:53:46 · 252 阅读 · 0 评论 -
坐标型\序列型\划分型动态规划
坐标型动态规划最简单的动态规划给定一个序列或网络需要找到序列中某个/些子序列或网格中的某条路径– 某种性质最大/最小– 计数– 存在性动态规划方程f[i]中的下标i表示以ai为结尾的满足条件的子序列的性质,f[i][j]中的下标i,j表示以格子(i,j)为结尾的满足条件的路径的性质– 最大值/最小值– 个数– 是否存在坐标型动态规划的初始条件f[0]就是指以a0为结尾的子序列的性质对于网格上的动态规划,如果f[i][j]只依赖于本行的f[i][x]和上一行的f[i-1][y],则原创 2021-04-17 09:54:26 · 443 阅读 · 0 评论 -
动态规划:基本思路和常见题型
看了九章算法的动态规划专题课,记录一下。动态规划可以解什么题计数有多少种方式走到右下角有多少种方式选出K个数使得和为sum求最大值或最小值从左上角走到右下角路径的最大数字和最长上升子序列长度求存在性取石子游戏,先手是否必胜能不能选出K个数使得和为sum基本思路确定状态从最后一步出发化解为子问题确定转移方程可以根据子问题定义直接得出考虑初始条件和边界情况确定计算顺序需要利用到之前计算的结果常见动态规划类型坐标型动态规划原创 2020-09-28 21:07:31 · 295 阅读 · 0 评论