如何解决leetcode中打家劫舍的问题
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,小编给大家分享一下如何解决leetcode中打家劫舍的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!题目链接https
千家信息网最后更新 2025年12月02日如何解决leetcode中打家劫舍的问题
小编给大家分享一下如何解决leetcode中打家劫舍的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
题目链接
https://leetcode-cn.com/problems/house-robber/
题目描述
你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。
给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。
示例 1:
输入: [1,2,3,1]
输出: 4
解释: 偷窃 1 号房屋 (金额 = 1) ,然后偷窃 3 号房屋 (金额 = 3)。
偷窃到的最高金额 = 1 + 3 = 4 。
示例 2:
输入: [2,7,9,3,1]
输出: 12
解释: 偷窃 1 号房屋 (金额 = 2), 偷窃 3 号房屋 (金额 = 9),接着偷窃 5 号房屋 (金额 = 1)。
偷窃到的最高金额 = 2 + 9 + 1 = 12 。
解题方案
思路
标签:动态规划
动态规划方程:
dp[n] = MAX( dp[n-1], dp[n-2] + num )由于不可以在相邻的房屋闯入,所以在当前位置
n房屋可盗窃的最大值,要么就是n-1房屋可盗窃的最大值,要么就是n-2房屋可盗窃的最大值加上当前房屋的值,二者之间取最大值举例来说:1号房间可盗窃最大值为3即为
dp[1]=3,2号房间可盗窃最大值为4即为dp[2]=4,3号房间自身的值为2即为num=2,那么dp[3] = MAX( dp[2], dp[1] + num ) = MAX(4, 3+2) = 5,3号房间可盗窃最大值为5时间复杂度:O(n),n为数组长度
代码
Java版本
class Solution {
public int rob(int[] nums) {
int len = nums.length;
if(len == 0)
return 0;
int[] dp = new int[len + 1];
dp[0] = 0;
dp[1] = nums[0];
for(int i = 2; i <= len; i++) {
dp[i] = Math.max(dp[i-1], dp[i-2] + nums[i-1]);
}
return dp[len];
}
}
JavaScript版本
/**
* @param {number[]} nums
* @return {number}
*/
var rob = function(nums) {
const len = nums.length;
if(len == 0)
return 0;
const dp = new Array(len + 1);
dp[0] = 0;
dp[1] = nums[0];
for(let i = 2; i <= len; i++) {
dp[i] = Math.max(dp[i-1], dp[i-2] + nums[i-1]);
}
return dp[len];
};
画解

以上是"如何解决leetcode中打家劫舍的问题"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
房屋
金额
最大
最大值
号房
最高
就是
篇文章
打家劫舍
问题
内容
动态
小偷
数组
版本
示例
系统
要么
题目
规划
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
英语词根数据库
白沟软件开发培训
个性化网络技术是什么
软件开发效果搞笑图
北京亦庄软件开发
漳州网络安全信息委员会赖小强
数据库取值不重怎么写
网络安全产品技术施施费用
网络安全课微课
初中学生网络安全的ppt
上海常规软件开发质量服务
软件开发销售客户分析
自己的电脑如何变成游戏服务器
全数据库检索包含某字段的表
安顺租房网络安全
泸州大二软件开发
郑州畅玩网络技术有限公司
微信公众号会议服务器
2022年网络安全知识考试答案
网络安全最牛的人
网络技术推广
dnf数据库在哪里
七日杀服务器给管理员
网络安全高校大赛新闻联播
2020年度网络安全资料整理
为什要制定网络安全法
服务器有win7的吗
华润网络安全工程师报考条件
咖啡厅效果图软件开发
服务器ddr4和ddr5的区别