解题思路:
dp
提交代码:
class Solution {
public int rob(int[] nums) {
if(nums==null||nums.length==0) return 0;
if(nums.length==1) return nums[0];
int[] dp=new int[nums.length];
dp[0]=nums[0];dp[1]=Math.max(nums[0], nums[1]);
for(int i=2;i<nums.length;i++)
dp[i]=Math.max(dp[i-1], dp[i-2]+nums[i]);
return dp[dp.length-1];
}
}
运行结果: