
动态规划
文章平均质量分 90
空無一悟
平静
展开
-
2023-05-05 背包问题
有N件物品和一个容量为V的背包,第i件物品的体积是v[i]、价值是w[i],,求将哪些物品放入背包可以使得价值总和最大。这里的w是weight即权重的意思这是最基础的背包问题,"01"就是指每种物品要么选要么不选,我们定义状态fij表示从前i件物品中选出容量为j的背包能获得的最大价值状态定义,根据第i个物品选还是不选,分成两种情况fijfi−1j−vi]]wifijfi−1j取两者的较大值即为最终的最大价值fijmaxfi−1j−。原创 2023-05-05 20:34:43 · 976 阅读 · 0 评论 -
2023-05-04 线性DP_力扣练习
线性动态规划的主要特点是状态的推导是按照问题规模 i 从小到大依次推过去的,较大规模的问题的解依赖较小规模的问题的解。这里问题规模为 i 的含义是考虑前 i 个元素 [0…i] 时问题的解。dp [ n ] : = [ 0. . n ] 上问题的解从以上状态定义和状态转移可以看出,大规模问题的状态只与较小规模的问题有关,而问题规模完全用一个变量 i 表示,i 的大小表示了问题规模的大小,因此从小到大推 i 直至推到 n,就得到了大规模问题的解,这就是线性动态规划的过程。原创 2023-05-04 23:48:25 · 549 阅读 · 0 评论 -
2023-05-03 线性模型与区间DP
接着,将新堆与原先的第三堆合并,又得到新的堆,数目为12,耗费体力为12。假定每个果子重量都为1,并且已知果子的种类数和每种果子的数目,你的任务是设计出合并的次序方案,使多多耗费的体力最少,并输出这个最小的体力耗费值。如果有四个行李,重量从小到大分别是a、b、c、d,显然(a, b)和(c, d)的分组最优,因此2k个行李一定是先从小到大排序,然后依次取两个配对。因为是n个物品中选2k个,然后分成k组,直接DP不好找状态,需要先挖掘题目的性质,考虑选出了2k个行李后如何分组可以最小化疲惫度之和。原创 2023-05-03 22:13:41 · 569 阅读 · 0 评论 -
2023-05-02 动态规划简介
(即。原创 2023-05-02 23:53:13 · 938 阅读 · 0 评论 -
2023-04-29 动态规划介绍
动态规划是运筹学课程的一部分。原创 2023-04-29 19:50:31 · 782 阅读 · 0 评论 -
2023-04-26 力扣LeetCode上的DP动态规划问题分类汇总
所有线性递推关系都可以用矩阵快速幂做,可以O(logN),最典型是斐波那契数列。计数型DP都可以以组合数学的方法写出组合数,然后dp求组合数。本质是 dfs + 记忆化,用在状态的转移方向不确定的情况。策梅洛定理,SG 定理,minimax。原创 2023-04-26 23:00:05 · 703 阅读 · 0 评论