背包问题大致的描述是什么:
给你一个可装载重量为
W的背包和N个物品,每个物品有重量和价值两个属性。其中第i个物品的重量为wt[i],价值为val[i],现在让你用这个背包装物品,最多能装的价值是多少?那么对于这个问题,我们可以先对集合求和,得出
sum,把问题转化为背包问题:给一个可装载重量为
sum / 2的背包和N个物品,每个物品的重量为**nums[i]。现在让你装物品,是否存在一种装法,能够恰好将背包装满?
1  | public boolean canPartition(int[] nums) {  |