【LeetCode热题100】-- 45.跳跃游戏II

45.跳跃游戏II

方法:贪心

在具体的实现中,维护当前能够到达的最大下标的位置,记为边界。从左到右遍历数组,到达边界时,更新边界并将跳跃次数加一

在遍历数组时,不访问最后一个元素,因为在访问最后一个元素之前,我们的边界一定大于等于最后一个位置,否则就无法跳到最后一个位置了。

java 复制代码
class Solution {
    public int jump(int[] nums) {
        int n = nums.length;
        int maxPosition = 0,steps = 0,end = 0;
        for(int i = 0;i < n - 1;i++){
            maxPosition = Math.max(maxPosition, i + nums[i]);  //下次最远能跳多远
            if( i == end ){
                end = maxPosition;  //更新下一次跳的位置
                steps++;  //本次跳跃的所有位置都检查过了,跳跃一次
            }
        }
        return steps;
    }
}
相关推荐
逻辑留白陈2 小时前
Adaboost进阶:与主流集成算法对比+工业级案例+未来方向
算法
Learn Beyond Limits2 小时前
Mean Normalization|均值归一化
人工智能·神经网络·算法·机器学习·均值算法·ai·吴恩达
天选之女wow3 小时前
【代码随想录算法训练营——Day28】贪心算法——134.加油站、135.分发糖果、860.柠檬水找零、406.根据身高重建队列
算法·leetcode·贪心算法
Gohldg3 小时前
C++算法·贪心例题讲解
c++·数学·算法·贪心算法
远远远远子3 小时前
类与对象 --1
开发语言·c++·算法
Aaplloo3 小时前
【无标题】
人工智能·算法·机器学习
西望云天3 小时前
The 2024 ICPC Asia Nanjing Regional Contest(2024南京区域赛EJKBG)
数据结构·算法·icpc
10岁的博客4 小时前
容器化安装新玩法
算法
不会算法的小灰4 小时前
HTML简单入门—— 基础标签与路径解析
前端·算法·html
flashlight_hi5 小时前
LeetCode 分类刷题:1901. 寻找峰值 II
python·算法·leetcode