跳跃游戏 II【贪心算法】

  1. 跳跃游戏 II

java 复制代码
class Solution {
    public int jump(int[] nums) {
        int cur = 0;//当前最大覆盖路径
        int next = 0;//下一步的最大覆盖路径
        int res = 0;//存放结果,到达终点时最少的跳跃步数
        for (int i = 0; i < nums.length; i++) {//遍历数组,以给出数组以一个元素往后遍历
                next = Math.max(i + nums[i], next);//遍历数组时,先进行当前元素的下一步覆盖最大路径计算
                if (i == cur) {//遍历到当前覆盖路径的最后一个索引位置
                    if (cur != nums.length - 1) {//如果还没有到达终点
                    res++;
                    cur = next;//更新当前覆盖最大路径
                    if (cur >= nums.length - 1) {//如果当前覆盖路径已可以到达终点
                        return res;
                    }
                }
            }
        }
        return res;
    }
}
相关推荐
小高求学之路3 分钟前
计算机视觉、YOLO算法模型训练、无人机监测人员密集自动识别
算法·yolo·计算机视觉
散峰而望8 分钟前
【基础算法】剪枝与记忆化搜索:算法优化的双刃剑,效率倍增的实战指南
算法·机器学习·剪枝
m0_748873558 分钟前
C++与Rust交互编程
开发语言·c++·算法
2401_891482177 小时前
多平台UI框架C++开发
开发语言·c++·算法
88号技师8 小时前
2026年3月中科院一区SCI-贝塞尔曲线优化算法Bezier curve-based optimization-附Matlab免费代码
开发语言·算法·matlab·优化算法
t198751288 小时前
三维点云最小二乘拟合MATLAB程序
开发语言·算法·matlab
x_xbx9 小时前
LeetCode:148. 排序链表
算法·leetcode·链表
Darkwanderor9 小时前
三分算法的简单应用
c++·算法·三分法·三分算法
2401_831920749 小时前
分布式系统安全通信
开发语言·c++·算法
WolfGang0073219 小时前
代码随想录算法训练营 Day17 | 二叉树 part07
算法