news 2026/3/4 20:43:53

力扣hot100:跳跃游戏

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣hot100:跳跃游戏

题目描述:

贪心算法思想:

贪心算法的核心是每一步都做出当前状态下的局部最优选择,最终期望得到全局最优解。对于本题,局部最优策略是:在遍历过程中,持续维护 “当前能到达的最大索引”,每到一个位置,就更新这个最大索引(取当前最大索引与 “当前位置 + 当前位置能跳的最大长度” 的较大值)。通过这种局部最优的更新,最终判断是否能覆盖到数组的最后一个索引。

思路解析:

要判断能否到达数组最后一个下标,关键在于跟踪 “能到达的最远位置”,具体思路如下:

  1. 初始化最大可达索引:从数组第一个元素开始,初始最大可达索引为0(起始位置)。
  2. 遍历数组的每个位置:
    • 若当前遍历的索引i超过了 “当前能到达的最大索引”,说明该位置无法到达,直接返回false
    • 否则,更新 “能到达的最大索引”(取当前最大索引与i + nums[i]的较大值,i + nums[i]是从当前位置i能跳到的最远位置)。
    • 若更新后的最大索引已经覆盖了数组的最后一个下标(即maxLength >= n-1),直接返回true(提前终止,提升效率)。
  3. 遍历结束:若顺利遍历完所有位置,说明最后一个下标可到达,返回true

代码:

class Solution { public boolean canJump(int[] nums) { int n = nums.length; // 获取数组长度 if (n == 0) { // 处理空数组的边界情况 return false; } int maxLength = 0; // 记录当前能到达的最大索引 for (int i = 0; i < n; i++) { // 遍历数组的每个位置 // 若当前索引超过了能到达的最大范围,说明无法到达后续位置,返回false if (i > maxLength) { return false; } // 更新能到达的最大索引:取当前最大索引 与 “当前位置+当前位置能跳的最大长度”的较大值 maxLength = Math.max(maxLength, i + nums[i]); // 若最大索引已覆盖最后一个下标,直接返回true(提前终止) if (maxLength >= n - 1) { return true; } } return true; // 遍历完成后,说明最后一个下标可到达 } }

代码解析:

  • 边界处理:if (n == 0)处理空数组场景,避免后续逻辑出错。
  • 遍历与合法性判断:if (i > maxLength)是核心判断 —— 若当前位置i不在 “能到达的范围” 内,说明无法继续前进,直接返回false
  • 贪心更新最大可达索引:maxLength = Math.max(maxLength, i + nums[i])是贪心策略的体现 —— 每一步都尽可能扩大 “能到达的范围”,保证局部最优。
  • 提前终止:if (maxLength >= n - 1)一旦最大范围覆盖了最后一个下标,立即返回true,无需遍历剩余元素,提升算法效率。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/22 14:29:19

解决Arduino安装端口灰色问题:驱动重装完整示例

为什么你的Arduino端口是灰色的&#xff1f;一招彻底解决CH340驱动难题 你是不是也遇到过这种情况&#xff1a;兴冲冲地打开Arduino IDE&#xff0c;插上开发板&#xff0c;结果“工具 > 端口”菜单里一片空白&#xff0c;或者所有选项都是 灰色不可选 &#xff1f;明明线…

作者头像 李华
网站建设 2026/3/3 20:02:51

单卡10分钟微调Qwen2.5-7B实战:云端GPU成本仅2块钱

单卡10分钟微调Qwen2.5-7B实战&#xff1a;云端GPU成本仅2块钱 你是不是也遇到过这样的情况&#xff1f;作为创业团队的CTO&#xff0c;想快速验证一个大模型在特定场景下的效果——比如用Qwen2.5-7B做医疗问答系统。但公司没有GPU服务器&#xff0c;租一台云主机包月要3000块…

作者头像 李华
网站建设 2026/3/3 18:08:41

Qwen3-VL-2B-Instruct最新版体验:云端GPU即时更新,永远用最新模型

Qwen3-VL-2B-Instruct最新版体验&#xff1a;云端GPU即时更新&#xff0c;永远用最新模型 你是不是也和我一样&#xff0c;是个技术极客&#xff0c;总想第一时间尝鲜大模型的新版本&#xff1f;尤其是像 Qwen3-VL-2B-Instruct 这种支持多模态理解、能“看懂”图像和文字的轻量…

作者头像 李华
网站建设 2026/3/3 4:00:50

广告创意快速迭代:AI印象派艺术工坊A/B测试部署实战

广告创意快速迭代&#xff1a;AI印象派艺术工坊A/B测试部署实战 1. 引言 1.1 业务场景描述 在数字营销与广告创意领域&#xff0c;视觉内容的差异化直接影响用户点击率&#xff08;CTR&#xff09;和转化率&#xff08;CVR&#xff09;。传统图像处理依赖设计师手动调色、滤…

作者头像 李华
网站建设 2026/3/3 18:08:53

新手必看:Arduino IDE基础串口通信入门教程

从零开始玩转Arduino串口通信&#xff1a;不只是“打印Hello World”那么简单你有没有遇到过这种情况&#xff1a;代码烧进去了&#xff0c;板子也通电了&#xff0c;但LED就是不亮&#xff1f;传感器读数全是0&#xff1f;程序到底跑没跑、卡在哪一步&#xff0c;完全摸不着头…

作者头像 李华
网站建设 2026/2/23 14:37:02

工业4.0基础:设备铭牌自动识别的物联网集成

工业4.0基础&#xff1a;设备铭牌自动识别的物联网集成 在现代工厂中&#xff0c;设备巡检仍是许多企业依赖人工完成的基础工作。巡检人员需要逐台查看设备铭牌&#xff0c;手动记录型号、序列号、出厂日期等关键参数&#xff0c;再录入系统。这种方式不仅效率低&#xff0c;还…

作者头像 李华