class Solution {
public int jump(int[] nums) {
// 初始化步数为0
int step = 0;
// 初始化当前能到达的最远位置为0
int maxp = 0;
// 初始化下一个跳跃的边界位置为0
int end = 0;
// 遍历数组,除了最后一个元素
for(int i=0;i<nums.length-1;i++) {
// 如果当前位置加上当前位置的值大于最远位置,更新最远位置
if(nums[i] + i > maxp)
maxp = nums[i]+i;
// 如果当前位置等于下一个跳跃的边界位置
if(end == i) {
// 更新下一个跳跃的边界位置为最远位置
end = maxp;
// 步数加1
step++;
}
}
// 返回总步数
return step;
}
}
力扣45.跳跃游戏II
听风客12024-08-29 10:14
相关推荐
鲨鱼辣钊3 小时前
【FastAPI筑基-Day19】APScheduler定时任务全实战|自动执行、动态启停、后台常驻不正经学生5 小时前
C语言预处理详解:编译器真正动手之前的那些事毕竟是shy哥8 小时前
计算YOLO数据集中每个类的目标数M78佐菲8 小时前
Linux学习笔记:TCP协议学长毕业设计8 小时前
基于SpringBoot的公益基金管理系统(源码+文档+讲解视频)东小西8 小时前
【SAA实战】第 3 篇 · 工具调用全攻略:把业务能力交给 Agent 自己调度东小西8 小时前
【SAA实战】第 4 篇 · Agent 短期记忆:saver 让 Agent 跨轮记得住(threadId 隔离)圣保罗的大教堂8 小时前
leetcode 1406. 石子游戏 III 困难许彰午8 小时前
22-DataCenter报文序列化2601_962065258 小时前
[MySQL] SQL优化之性能分析