news 2026/5/1 5:47:54

LeetCode热题100--45. 跳跃游戏 II--中等

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
LeetCode热题100--45. 跳跃游戏 II--中等

题目

给定一个长度为 n 的 0 索引整数数组 nums。初始位置在下标 0。

每个元素 nums[i] 表示从索引 i 向后跳转的最大长度。换句话说,如果你在索引 i 处,你可以跳转到任意 (i + j) 处:

0 <= j <= nums[i] 且
i + j < n
返回到达 n - 1 的最小跳跃次数。测试用例保证可以到达 n - 1。

示例 1:
输入: nums = [2,3,1,1,4]
输出: 2
解释: 跳到最后一个位置的最小跳跃数是 2。
从下标为 0 跳到下标为 1 的位置,跳 1 步,然后跳 3 步到达数组的最后一个位置。

示例 2:
输入: nums = [2,3,0,1,4]
输出: 2

题解

classSolution{publicintjump(int[]nums){intans=0;intcurRight=0;// 已建造的桥的右端点intnextRight=0;// 下一座桥的右端点的最大值for(inti=0;i<nums.length-1;i++){// 遍历的过程中,记录下一座桥的最远点nextRight=Math.max(nextRight,i+nums[i]);if(i==curRight){// 无路可走,必须建桥curRight=nextRight;// 建桥后,最远可以到达 next_rightans++;}}returnans;}}

解析

出自:【图解】一张图秒懂跳跃游戏!(Python/Java/C++/C/Go/JS/Rust)

classSolution{//定义一个新的解决方案类publicintjump(int[]nums){//整型方法jump输入一个整型数组nums,用于找到到达最后一个索引所需的最小跳跃次数intans=0;//初始化变量ans(存储步数)为零。它将用于跟踪总共需要的跳跃次数intcurRight=0,nextRight=0;//初始化当前最右位置curRight和下一座桥(或可以到达的位置)nextRight为0。用于计算我们当前步数内可以到达的最大点for(inti=0;i<nums.length-1;i++){//循环遍历整个数组,直到不是最后一个元素(长度-1)//记录下一座桥的最远点nextRight=Math.max(nextRight,i+nums[i]);//将变量nextRight更新为旧的nextRight和当前位置加上我们通过步数可以到达的最大距离之间的较大值。这样确保了我们总是选择一个尽量靠右的位置(因为下一座桥越远)if(i==curRight){//如果在当前点无法继续向前,必须要跳跃到该点curRight=nextRight;//将当前最右位置更新为next_right。这表示我们可以到达下一个桥/步数的最远点ans++;//增加步数计数器(ans),因为我们需要走过这个距离来达到我们的新右端点}}//当我们走过了整个数组但无法跨越最后一个元素时,返回步数。这表示我们必须再跳一次以到达最后一个元素returnans;//返回总共步数(ans)的数量,它是最短路径的问题。时间复杂度为O(n),空间复杂度为O(1),其中n是输入数组nums的大小
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/20 19:10:01

终极文件预览解决方案:yazi让你的终端文件管理效率翻倍

终极文件预览解决方案&#xff1a;yazi让你的终端文件管理效率翻倍 【免费下载链接】yazi &#x1f4a5; 用 Rust 编写的极速终端文件管理器&#xff0c;基于异步 I/O。 项目地址: https://gitcode.com/GitHub_Trending/ya/yazi 还在为频繁切换应用查看不同文件而烦恼吗…

作者头像 李华
网站建设 2026/4/27 0:28:20

Flutter富文本性能优化:从架构演进到内存回收的深度实践

在移动应用开发中&#xff0c;富文本渲染的性能瓶颈往往成为用户体验的瓶颈。当我们面对长文本渲染场景时&#xff0c;Flutter Engine如何通过架构革新实现性能突破&#xff1f;本文将从实际性能指标出发&#xff0c;深入解析关键技术手段&#xff0c;并通过案例验证优化效果。…

作者头像 李华
网站建设 2026/4/30 23:01:33

【必收藏】2025大模型时代全面来临:程序员生产力革命与生存指南

大模型时代已全面到来&#xff0c;AI生成代码大幅提升开发效率&#xff0c;技术栈和招聘需求剧变。掌握AI工具的程序员薪资比同行高出40%~60%&#xff0c;拒绝学习的中级工程师面临被淘汰风险。同时&#xff0c;AI工程师、大模型训练师等新岗位井喷&#xff0c;跨界可能性增加。…

作者头像 李华
网站建设 2026/4/16 19:22:17

FastSAM自定义数据集实战指南:从零到精通的完整流程

还记得上次做图像分割项目时&#xff0c;面对五花八门的数据格式和复杂的标注工具&#xff0c;那种无从下手的感觉吗&#xff1f;别担心&#xff0c;今天我们就来一起解决这个痛点&#xff0c;用最接地气的方式&#xff0c;带你从零开始制作FastSAM专属数据集。 【免费下载链接…

作者头像 李华
网站建设 2026/4/26 19:39:51

分布式AI系统上下文管理的架构设计与工程实践

分布式AI系统上下文管理的架构设计与工程实践 【免费下载链接】adk-python 一款开源、代码优先的Python工具包&#xff0c;用于构建、评估和部署灵活可控的复杂 AI agents 项目地址: https://gitcode.com/GitHub_Trending/ad/adk-python 在AI系统从单机部署向分布式架构…

作者头像 李华