LeetCode45:跳跃游戏Ⅱ

题目描述
给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。

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

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

在这里插入图片描述
解题思想
在这里插入图片描述
在遍历的同时维护两个变量:1.当前能走到的最远位置maxPos 2.上次跳跃能走到的右边界end
如果遍历的时候到达了end但是并没有到达终点就说明需要进行跳跃

代码

class Solution {
public:int jump(vector<int>& nums) {//在遍历的同时维护两个变量:1.当前能走到的最远位置maxPos   2.上次跳跃能走到的右边界endint maxPos = 0, end = 0;int step = 0;for (int i = 0; i < nums.size() - 1; i++) {maxPos = max(maxPos, nums[i] + i);//如果已经到达上次跳跃所能到达的右边界,就说明需要进行跳跃,更新右边界if (i == end) {end = maxPos;step++;//如果当前更新的右边界能够抵达终点,就退出循环if (end >= nums.size() - 1) break;}}return step;}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/659727.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

确定性最大似然(DML)估计测角

1. 最大似然函数 贝叶斯方法是基于统计理论的一种经典方法&#xff0c;适合于有关参数估计问题。最大似然 (Maximum Likelihood&#xff0c;ML) 估计方法就是贝叶斯估计方法的一种特例&#xff0c;是在已知高斯噪声情况下的贝叶斯最优估计。在ML算法中&#xff0c;观测所得信号…

毅四捕Go设计模式笔记——命令模式

命令模式&#xff08;Command Pattern&#xff09; 为了解决什么问题&#xff1f; 命令模式的目的是将请求发起者和请求执行者解耦&#xff0c;使得请求的发起者不需要知道具体的执行者是谁&#xff0c;也不需要知道执行的具体过程&#xff0c;只需要发送请求即可。 通过使用…

汇丰、Paypal、万事达新动作!全球银行如何构筑量子安全堡垒?

2024年4月22日&#xff0c;欧洲刑警组织更新发文称&#xff0c;其下属欧洲网络犯罪中心&#xff08;EC3&#xff09;与EC3金融服务咨询小组密切合作&#xff0c;创建了量子安全金融论坛&#xff08;QSFF&#xff09;。EC3提供常设秘书处服务&#xff0c;以支持QSFF和指导委员会…

题目 2671: 推导部分和

题目描述: 对于一个长度为 N 的整数数列 A1, A2, AN&#xff0c;小蓝想知道下标 l 到 r 的部分和 是多少&#xff1f; 然而&#xff0c;小蓝并不知道数列中每个数的值是多少&#xff0c;他只知道它的 M 个部分和的值。其中第 i 个部分和是下标 li 到 ri 的部分和 &#xf…

rtl8188ftv debian linux 多架构移植方法

5 块包邮&#xff0c;挂到 x86_64 debian 12 虚拟机&#xff0c;实测下载能到 22Mbps&#xff0c;也可能就2Mbps&#xff0c;上传能到 40Mbps 关键词&#xff1a; rtl8xxxu、rtl8xxxu.ko、rtl8xxxu_8188f.c、mac80211.h、cfg80211.ko、sudo modinfo rtl8xxxu.ko | grep depen…

[Real-Time Spectrum Analyzers (RTSA) ] 实时频谱分析 A

废话&#xff1a; 这部分内容比较多&#xff0c;先写一部分吧&#xff1b; 这个是频谱仪的一部分功能&#xff0c;姑且把仪器制造商分别一流和其他吧&#xff1b; 一流的应该只有两家&#xff0c;Agilent 安捷伦和 R&S罗德与施瓦茨&#xff1b; 一、安捷伦的部分新产品9…

使用 Docker 自建一款怀旧游戏之 - 扫雷

1&#xff09;扫雷 简介 扫雷 是一种经典的单人电脑游戏&#xff0c;最初由微软公司在 1990 年代开发并内置在 Windows 操作系统中。游戏的目标是在一个由方块组成的网格上揭开所有非地雷的方块&#xff0c;而不触发地雷。每个方块上都标有数字&#xff0c;表示周围 8 个方块中…

箭头函数的一些总结

箭头函数,我们常常会用到,那它在使用上和常规函数有什么区别呢?我们来一起看看哈 先来定义一个普通函数,一个箭头函数,分别看一下它们的结构 function abc(){} console.dir(abc)通过查看结构我们知道普通函数有两个原型,一个是作为函数特有的prototype,原型另一个是作为对象…

用Python Turtle画一个中国结

中国结&#xff0c;作为中华民族传统文化的象征之一&#xff0c;以其独特的编织技艺和深厚的文化内涵&#xff0c;深受人们喜爱。今天&#xff0c;我们就来用Python的turtle模块&#xff0c;尝试绘制一个充满韵味的中国结。 我们先来看看整个中国结生成的过程&#xff1a; 中国…

算法学习Day1——【数据结构】单调栈

1.什么是单调栈以及单调栈的作用 &#xff08;1&#xff09;定义 顾名思义&#xff0c;单调栈是一个有序的栈&#xff0c;可能从栈顶到栈底单调递增&#xff08;单调递增栈&#xff09;&#xff0c;也有可能从栈顶到栈底单调递减&#xff08;单调递减栈&#xff09;。 &…

KUKA机器人如何给IO信号或寄存器添加中文注释信息?

KUKA机器人如何给IO信号或寄存器添加中文注释信息? 如下图所示,首先,我们需要登录专家以上用户权限(默认密码KUKA), 如下图所示,点击“投入运行”—“网络配置”, 如下图所示,此时机器人的IP地址为192.168.1.10, 如下图所示,用一根网线连接机器人控制柜到笔记…

[SpringBoot] JWT令牌——登录校验

JWT&#xff08;JSON Web Token&#xff09;是一种用于在网络应用之间传递信息的开放标准&#xff08;RFC 7519&#xff09;。它由三部分组成&#xff1a;头部&#xff08;header&#xff09;、载荷&#xff08;payload&#xff09;和签名&#xff08;signature&#xff09;。J…