关于背包问题中压缩到一维状态遍历的正向和反向的问题(图片手稿是重点)
主要针对三种背包问题进行对比说明。
1.01背包(各类物品只用一个)
2.完全背包(各类物品由无限个)
3.多重背包(各类物品的规定数量个)
01背包
例:给定一个容量为amout的包,需要将N类物品(每种物品提供一个,体积为Vi,具有的价值为Ci)装进背包使得装进背包的各类物品的价值和最大。
按照固有的套路:使用动态规划:
状态转移方程:dp[i][j]表示选择前i个物品装进容量为j的背包时的最大价值;dp[i][j]=max{dp[i-1][j],dp[i-1][j-v[i]]+c[i]}
分为两种情况
原创
2020-08-02 10:19:17 ·
410 阅读 ·
1 评论