9.10|day3 |day 42|背包问题->分割等和子集

01背包:每个物品只能装一次

暴力解法:2的n次方

class Solution {
    public boolean canPartition(int[] nums) {
    int sum = 0;
    for(int i = 0;i=nums[i];j--){
         dp[j] = Math.max(dp[j],dp[j-nums[i]]+nums[i]);
        }//就是这个背包装nums[i] 物品同时比较装其他物品的价值
        if(dp[target] == target){
            return true;
        }//每次装完一次物品进行一次检测
    }
    return false;
    }
}

你可能感兴趣的:(算法,leetcode,数据结构)