198. 打家劫舍

简介: 198. 打家劫舍

image.png


方法一:动态规划+数组


class Solution {
    public int rob(int[] nums) {
        if(nums==null||nums.length==0){
            return 0;
        }
        int[] dp=new int[nums.length+1];
        dp[0]=0;
        dp[1]=nums[0];
        for(int i=2;i<=nums.length;i++){
            dp[i]=Math.max(dp[i-1],dp[i-2]+nums[i-1]);
        }
        return dp[nums.length];
    }
}


方法二:动态规划+动态数组


class Solution {
    public int rob(int[] nums) {
        if(nums==null||nums.length==0){
            return 0;
        }
        int[] dp=new int[3];
        dp[0]=0;
        dp[1]=nums[0];
        for(int i=2;i<=nums.length;i++){
            dp[i%3]=Math.max(dp[(i-1)%3],dp[(i-2)%3]+nums[(i-1)]);
        }
        return dp[nums.length%3];
    }
}
目录
相关文章
|
3月前
代码随想录 Day40 动态规划08 LeetCodeT198打家劫舍 T213打家劫舍II T337 打家劫舍III
代码随想录 Day40 动态规划08 LeetCodeT198打家劫舍 T213打家劫舍II T337 打家劫舍III
29 0
|
3月前
|
Java
leetcode-213:打家劫舍 II
leetcode-213:打家劫舍 II
14 0
|
3月前
|
Java
leetcode-198:打家劫舍
leetcode-198:打家劫舍
21 0
leetcode-198:打家劫舍
|
3月前
|
Java
leetcode-337:打家劫舍 III
leetcode-337:打家劫舍 III
24 0
|
7月前
Leetcode:打家劫舍系列
Leetcode:打家劫舍系列
|
8月前
打家劫舍篇
打家劫舍篇
47 0
|
8月前
leetcode 198. 打家劫舍
leetcode 198. 打家劫舍
|
10月前
|
Java
打家劫舍问题
打家劫舍问题
leetcode 213 打家劫舍II
leetcode 213 打家劫舍II
66 0
leetcode 213 打家劫舍II
leetcode 337 打家劫舍III
leetcode 337 打家劫舍III
62 0
leetcode 337 打家劫舍III