您的位置:首页 > 其它

动态规划-背包问题总述

2015-09-24 10:21 260 查看
背包问题是这样一类问题——背包有重量限制,要往背包里放物品。每样物品都有自己的价值v与重量w。问怎样放使得背包里物品的总价值最大。

01背包:每样东西只有一个,要么放,要么不放,所以得名01背包

完全背包:每样物品都没有个数限制

不完全背包:不同物品的个数不尽相同

01背包

dp[i][j]表示以下两种约束下的最大价值:

1.所放物品总重量<=j;

2.所装物品为前[0,i]种。

那么状态转移方程dp={max(dp[i−1][j],dp[i−1][j−w[i]]+v[i])dp[i−1][j]j>=w[i]j<w[i]dp=\begin{cases}
max(dp[i-1][j],dp[i-1][j-w[i]]+v[i]) & j>=w[i] \\
dp[i-1][j] & j
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: