力扣HOT100 - 198. 打家劫舍

解题思路:

动态规划

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

为什么不是int[] dp=new int[n+1];

下标从0开始就用new int[n]就行,如果从1开始会越界才会加1。

相关推荐
nike0good2 分钟前
The 4th Universal Cup GP of Kyoto, April 4-5, 2026 题解
算法·深度优先·图论
那个失眠的夜14 分钟前
Spring整合Mybatis实现用户的CRUD
java·spring·mybatis
superantwmhsxx17 分钟前
Spring Initializr创建springboot项目,提示java 错误 无效的源发行版:16
java·spring boot·spring
山河梧念17 分钟前
【保姆级教程】VMware虚拟机安装全流程
android·java·数据库
莫逸风21 分钟前
【java-core-collections】红黑树深度解析
java·开发语言
李少兄22 分钟前
Fastjson2 处理 JSON 字段大小写不一致的优雅方案
java·json
计算机毕业设计指导25 分钟前
基于SpringBoot+Vue3的荣成市健康管理平台设计与实现
java·spring boot·后端
渔民小镇29 分钟前
5 分钟搭建桌游服务器:Room 模块 + 领域事件实战
java·运维·服务器·分布式·游戏
SeeD NICK34 分钟前
Spring Boot 3.4 正式发布,结构化日志!
java·spring boot·后端
澈20735 分钟前
高效查找算法详解:从顺序到哈希
数据结构·算法·哈希算法