
背包问题
zhujiana
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
1、01背包
一、课程目标 背包问题 01背包 动态规划 过程理解 关键代码 二、目标详解 1、背包问题 基本模型:一个容量为V的背包,在一定的限制条件下,放进最多(或最少)价值的东西。 根据限制条件的不同,分为三种情况: 01背包(ZeroOnePack):每种物品只有一件,即只能选择放或者不放 完全背包(CompletePack):每种物品有无限件 多重背包(MultiplePa...原创 2019-08-07 08:01:12 · 244 阅读 · 0 评论 -
2、背包优化
一、实验目标 空间复杂度优化 记录路径 满背包 目标详解 1、复杂度 以上动态规划的时间复杂度与空间复杂度均为O(N* V)。 但空间复杂度可以优化到O(m),因为每一次状态转移只与上一行的值有关,我们可以: 状态只用一维数组 同一行里,从后往前填写,这样前面的值还被保留(上一行的值) 定义状态:设dp[j]表示把i件物品放入容量j的背包可获得的最大价值。 状态转移方程为:...原创 2019-08-07 08:01:20 · 146 阅读 · 0 评论 -
3、完全背包
一、课程目标 完全背包问题 状态转移方程 物品拆分 一维状态 二、目标详解 1、完全背包问题 有一个容量为V的背包和N种物品,第i种物品的体积是c[i],价值是w[i]。每种物品都有无限件可用,求将哪些物品装入背包使得价值总和最大。 2、状态转移方程 对于第i件物品,01背包的关键在于取或不取,而完全背包就有取0件、1件、…k件(k<=v/c[i])的选择,因此状态方程...原创 2019-08-07 08:01:29 · 103 阅读 · 0 评论 -
4、多重背包
多重背包原创 2019-08-07 08:01:39 · 145 阅读 · 0 评论