跳跃游戏 II

题目链接

跳跃游戏 II

题目描述

注意点

  • 题目保证可以到达 nums[n - 1]

解答思路

  • 可以从后往前推出那些位置可以跳到目标点(最初是到终点),但是可能会有多个位置都能跳到目标点,此时可以贪心地取目标点最远的点作为新的目标点(一定保证步数最少),以此类推直到起点为止

代码

class Solution {
   
    public int jump(int[] nums) {
   
        int step = 0;
        int loc = nums.length - 1;
        while (loc > 0) {
   
            for (int i = 0; i < loc; i++) {
   
                if (i + nums[i] >= loc) {
   
                    loc = i;
                    step++;
                }
            }
        }
        return step;
    }
}

关键点

  • 反向查找出发位置
  • 贪心算法找到最小跳跃数

相关推荐

  1. 45. 跳跃游戏 II

    2024-02-22 16:58:02       36 阅读
  2. 45. 跳跃游戏 II

    2024-02-22 16:58:02       28 阅读
  3. 45. 跳跃游戏 II

    2024-02-22 16:58:02       30 阅读
  4. 算法-跳跃游戏 II

    2024-02-22 16:58:02       24 阅读
  5. 45. 跳跃游戏 II

    2024-02-22 16:58:02       18 阅读
  6. 跳跃游戏 + 45. 跳跃游戏 II

    2024-02-22 16:58:02       45 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-22 16:58:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-22 16:58:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-22 16:58:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-22 16:58:02       20 阅读

热门阅读

  1. 干货——使用alzet渗透泵的注意事项

    2024-02-22 16:58:02       32 阅读
  2. C#中“ref“关键字的使用

    2024-02-22 16:58:02       28 阅读
  3. CSS :has() 能解决什么问题?

    2024-02-22 16:58:02       26 阅读
  4. 文生视频Sora

    2024-02-22 16:58:02       29 阅读
  5. YOLOv8模型部署

    2024-02-22 16:58:02       33 阅读
  6. 存储过程与高级编程语言:解析其差异与融合

    2024-02-22 16:58:02       26 阅读
  7. IDEA打开已有vue项目

    2024-02-22 16:58:02       28 阅读