力扣45. 跳跃游戏 II

贪心算法

  • 思路:
    • 在 pos 位置,能跳到 pos + nums[pos] 位置;
    • 正向遍历数组,迭代出能跳到的最大位置:
      • maxPos = std::max(maxPos, idx + nums[idx]);

    • 在遍历到最大位置的地方则更新步数,并重新统计基于此位置能跳到的最大位置;
class Solution {
public:
    int jump(vector<int>& nums) {
        int maxPos = 0;
        int size = nums.size();
        int step = 0;
        int end = 0;

        for (int idx = 0; idx < size - 1; ++idx) {
            if (maxPos >= idx) {
                maxPos = std::max(maxPos, idx + nums[idx]);
                if (idx == end) {
                    end = maxPos;
                    ++step;
                }
            }
        }

        return step;
    }
};

相关推荐

  1. 45. 跳跃游戏 II

    2023-12-24 20:44:02       52 阅读
  2. 45. 跳跃游戏 II

    2023-12-24 20:44:02       48 阅读
  3. [题解]45. 跳跃游戏 II

    2023-12-24 20:44:02       30 阅读
  4. 45.跳跃游戏

    2023-12-24 20:44:02       30 阅读
  5. 经典面试题】45. 跳跃游戏 II

    2023-12-24 20:44:02       55 阅读
  6. 45跳跃游戏2

    2023-12-24 20:44:02       40 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-24 20:44:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-24 20:44:02       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-24 20:44:02       87 阅读
  4. Python语言-面向对象

    2023-12-24 20:44:02       96 阅读

热门阅读

  1. C++函数模板详解,轻松实现通用函数

    2023-12-24 20:44:02       61 阅读
  2. MySQL 5.7依赖的软件包和下载地址

    2023-12-24 20:44:02       70 阅读
  3. cmake官方demo学习整理

    2023-12-24 20:44:02       45 阅读
  4. Jekins实现自动化部署

    2023-12-24 20:44:02       67 阅读
  5. 设计模式-结构型模式

    2023-12-24 20:44:02       60 阅读
  6. vue2源码解析---v-model双向数据绑定

    2023-12-24 20:44:02       59 阅读
  7. Linux: 常见工具、命令使用集锦

    2023-12-24 20:44:02       45 阅读