力扣45.跳跃游戏II

复制代码
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;
    }
}
相关推荐
康康的AI博客2 分钟前
工业数据中台:PLC、SCADA、MES的实时协同架构
java·服务器·网络
xb11325 分钟前
Winforms实战项目:运动控制界面原型
算法
MicroTech202514 分钟前
微算法科技(NASDAQ :MLGO)量子安全哈希(QSHA),增强量子时代的区块链安全保障
科技·算法·安全
それども14 分钟前
为什么要加@ResponseBody
java·开发语言·spring boot
一只专注api接口开发的技术猿25 分钟前
微服务架构下集成淘宝商品 API 的实践与思考
java·大数据·开发语言·数据库·微服务·架构
高洁0126 分钟前
数字孪生与数字样机的技术基础:建模与仿真
python·算法·机器学习·transformer·知识图谱
不忘不弃26 分钟前
模拟内存分配器2
算法
被星1砸昏头32 分钟前
C++中的享元模式
开发语言·c++·算法
2501_9444241235 分钟前
Flutter for OpenHarmony游戏集合App实战之记忆翻牌配对消除
android·java·开发语言·javascript·windows·flutter·游戏
鹿角片ljp42 分钟前
Java网络编程入门:从Socket到多线程服务器
java·服务器·网络