欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

leetcode 198打家劫舍

程序员文章站 2022-03-28 13:57:40
...

leetcode 198打家劫舍

动态规划
取当前最大值max与(前两个房屋抢到的最大值+当前房屋的价值)之间的最大值为新的最大值。

class Solution {
    public int rob(int[] nums) {
        if(nums==null || nums.length==0){
            return 0;
        }
        int last2Max=0;
        int max=0;
        for(int i=0;i<nums.length;i++){
            //当前max与(当前nums[i]+上两个房屋的最大值)之间取最大值。
            int temp=max;
            max=Math.max(last2Max+nums[i],max);
            last2Max=temp;
        }
        return max;
        
        
    }
}