题目链接https://leetcode.cn/problems/house-robber/
运用动态规划算法
很简单,直接上代码
class Solution {
public int rob(int[] nums) {
if(nums.length==1){
return nums[0];
}
int[] db = new int[nums.length];
db[0]=nums[0];
db[1]=Math.max(nums[0],nums[1]);
for(int i=2;i<nums.length;i++){
db[i]=Math.max(db[i-1],nums[i]+db[i-2]);
}
return db[nums.length-1];
}
}
时间效率100%!