三目的话改成:
int thisValue = (weight[i] <= j ? // 当前商品的价值 + 剩余空间的价值
(j - weight[i] > 0 ? value[i] + maxValue[i - 1][j - weight[i] - 1] : value[i])
: topValue);
作者看到了改一下吧,技术还是严谨些好~
0-1背包问题问题描述: 0-1背包问题:给定n种物品和一背包。物品 i 的重量似乎 wi,其价值为 vi,背包的容量为 c。问应该如何选择装入背包中的物品,使得装入背包中物品的总价值最大...