DeepSeek LeetCode 213. 打家劫舍 II Java实现

发布时间:2026/10/3 17:45:42

DeepSeek    LeetCode 213. 打家劫舍 II Java实现 LeetCode 213. 打家劫舍 II - Java 实现题目分析与打家劫舍 I 的区别房屋首尾相连成环第一个和最后一个不能同时偷。核心思路把环形问题拆成两个线性问题偷 [0, n-2] 范围内的房子不偷最后一间偷 [1, n-1] 范围内的房子不偷第一间取两者的最大值。代码实现classSolution{publicintrob(int[]nums){intnnums.length;if(n1)returnnums[0];if(n2)returnMath.max(nums[0],nums[1]);// 情况1考虑 [0, n-2]不偷最后一间// 情况2考虑 [1, n-1]不偷第一间returnMath.max(robRange(nums,0,n-2),robRange(nums,1,n-1));}// 线性打家劫舍处理 nums[start..end] 区间privateintrobRange(int[]nums,intstart,intend){intprev20;// dp[i-2]intprev10;// dp[i-1]for(intistart;iend;i){intcurMath.max(prev1,prev2nums[i]);prev2prev1;prev1cur;}returnprev1;}}复杂度分析· 时间复杂度O(n)两趟线性扫描· 空间复杂度O(1)只用了几个变量滚动数组优化关键点说明边界处理n 1 时直接返回 nums[0]因为此时没有环的约束。拆分逻辑· 由于首尾不能同时偷所以要么不偷最后一间要么不偷第一间。· 两种情况覆盖了所有合法方案取最大值即可。滚动数组dp[i] max(dp[i-1], dp[i-2] nums[i])其中 dp[i] 表示偷到第 i 间房的最大金额。测试示例// 输入: [2,3,2] 输出: 3 偷第2间// 输入: [1,2,3,1] 输出: 4 偷第1、3间// 输入: [1,2,3] 输出: 3
延伸阅读

更多相关文章

2026/10/3 17:45:42

LangGraph 从入门到实战(02):节点、边、状态——组装你的第一个多步图

LangGraph 从入门到实战(02):节点、边、状态——组装第一个多步图 第 01 篇跑通了最简的一步图。这一篇把它升级成「多节点、有条件分支、自定义合并」的真正雏形——这三件事正是 Agent 循环的三块基石。 一、多节点:一条「流水线」 把一个数字先 +1 再翻倍,用两个节点…

2026/10/3 17:45:42

Android 开发环境从零搭建与首跑指南

摘要: 本文是一篇面向零基础读者的 Android 开发环境搭建实战指南。文章从核心概念讲起,依次覆盖硬件门槛自查、Android Studio 安装、SDK 配置、首个 Hello World 工程创建、代码编写、编译构建、模拟器与真机调试、日志与断点调试,最后给出性能优化与后续学习路径建议。全…

2026/10/3 17:40:42

蓝牙芯片驱动开发-第5章第6题-如何根据优先级合理分配DMA通道

蓝牙面试题解析:如何根据优先级合理分配 DMA 通道? 难度:⭐⭐⭐⭐ 较难 | 场景:社招二面/三面、MCU 驱动设计 | 高频:🔥🔥🔥🔥 标准答案 DMA 通道分配遵循 高优任务独占 + 低优任务共享 + 静态预留 + 动态调度 的原则: ① 蓝牙 SoC 中的典型 DMA 通道分配 // …

2026/10/3 18:40:44

Flask与Django双框架协作:校园闲置物品换购平台实战详解

看到"基于flask-django"这种题目的时候,不少同学第一反应是:这俩框架是不是得二选一?或者怕写成"用Django做了个主页、用Flask做了个登录页"的缝合怪。其实这类设计题目真正想考察的,是你能不能理解两个Web框架各自的能力边界&…

2026/10/3 18:40:44

Python机器学习入门实战:从环境搭建到模型部署

看着搜索引擎里一堆“Python机器学习”的提问,我挺感慨的。很多人被“机器学习”四个字劝退,觉得要数学天赋、要博士学历、要啃完一堆天书。但我在一线用Python做机器学习这几年,最大的感受是:这玩意儿本质上就是一门“用数据算概…

2026/10/3 18:40:44

Python机器学习筑基与实践:从环境配置到模型评估全攻略

几乎每天都有新手问我同一个问题:Python学到什么程度才能开始学机器学习?这个问题背后,往往是对一条漫无边际的学习路径的焦虑。作为写了很多年Python、也踩过无数机器学习深坑的从业者,我的答案从来都是:先别急着跑模…

2026/10/3 18:40:44

COMSOL三相变压器电磁场-电路耦合仿真:从原理到建模实操

做变压器仿真,最挠头的其实不是画几何,也不是剖网格,而是“这个电压电流到底怎么给上去”。我最初做配电变压器电磁场分析时,习惯的做法是直接给绕组加激励电流,算完磁场再看损耗和磁密。但后来遇到实际工程问题——带…

2026/10/3 18:35:44

SOC曲线:新能源电池电量估算的核心原理与工程实践

1. 什么是SOC曲线?它为什么是新能源电池管理的“心跳图”如果你刚接触新能源汽车或储能系统,大概率在BMS(电池管理系统)界面、技术文档甚至维修工单里见过“SOC”这个词——它缩写自State of Charge,中文叫“荷电状态”…

2026/10/2 8:16:46

东莞市品牌网站建设报价常见报错与解决

东莞品牌网站建设报价单背后:一份保姆级建站教程避坑实录 网站做好了没人访问,这大概是很多老板最头疼的事。花了大几万做的品牌站,上线后流量惨淡,比路边摊还冷清。别急着骂外包公司,很多“东莞品牌网站建设报价”里藏着不少猫腻,比如用模板站冒充定制…

2026/10/2 18:20:53

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解 【免费下载链接】spirula-studio Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA. 项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio Sp…

2026/10/3 15:02:19

SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南 模板网站太丑不够用?别急着加滤镜,那是治标不治本。很多老板盯着后台流量掉得眼红,却还在纠结首页Banner的圆角是不是3像素。这就像穿着西装去挖土,姿势不对,努力白费。我整理这份 速查手册…

2026/10/3 0:04:31

国内大学生必备的AI写作辅助软件是哪款?

国内高校学生在论文写作过程中,越来越依赖AI辅助工具提升效率,主流方案以本土化全流程工具为核心,结合通用大模型与专业插件,覆盖选题构思、框架搭建、初稿撰写、查重降重、格式调整等关键环节,本文将深入解析当前主流…

2026/10/3 0:04:31

Codex接入Jev模型完整指南:配置方法、本地部署与踩坑排查

最近不少人在讨论 Codex 搭配 Jev 这套玩法,我一开始没太当回事,直到自己把 Jev 接进 Codex跑了几轮编码任务之后,才明白那些说“直接起飞”的人是怎么想的。Codex 作为工具本身已经够能打了,但模型固定、上下文策略固定&#xff…

2026/10/3 0:04:31

GitHub 热门: NVIDIA/Model-Optimizer

👋 Hi,我擅长 AI 大模型应用落地、意识解码与 AI 开发工具链 。 💡 创业路上,用技术换时间,一起把 AI 变成生产力 🚀 >GitHub 热门: NVIDIA/Model-Optimizer 凌晨两点,你刚把跑通了的 Qwen3.…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑