public int rob(int[] nums) {
int n=nums.length;
int[] dp=new int[n];//第n个房子之前可偷的最大金额
//初始化
dp[0]=nums[0];
if(n>=2)
dp[1]=Math.max(nums[0],nums[1]);
for (int i =2 ; i

public int rob(int[] nums) {
int n=nums.length;
int[] dp=new int[n];//第n个房子之前可偷的最大金额
//初始化
dp[0]=nums[0];
if(n>=2)
dp[1]=Math.max(nums[0],nums[1]);
for (int i =2 ; i