【LeetCode】55.跳跃游戏

题目链接:

55.跳跃游戏

题目描述:

解题思路:

  • 如果某一个位置的元素为N,表示后面N个位置都可以作为起跳点
  • 把每一个能作为起跳点的位置都进行尝试,不断更新能跳到的最远位置

复杂度分析:

  • 时间复杂度O(N)
  • 空间复杂度O(1)

代码实现:

cpp 复制代码
class Solution {
public:
    bool canJump(vector<int>& nums) {
        int temp = 0;
        int n = nums.size();

        for (int i=0; i<n; i++){
            if(i> temp) return false;
            temp = max(temp, i+nums[i]);
        }
        return true;
    }
};
相关推荐
阿正的梦工坊10 分钟前
【Rust】13-Trait 系统、动态分发与对象安全
算法·安全·rust
言存24 分钟前
力扣热题283 移动零
数据结构·算法·leetcode
字节高级特工33 分钟前
智能指针原理与使用场景全解析
开发语言·c++·算法
珊瑚里的鱼34 分钟前
【动态规划】买卖股票的最佳时机Ⅲ
算法·动态规划
逻辑星辰40 分钟前
x-ds-pow-response逆向分析
开发语言·人工智能·python·深度学习·算法
CQU_JIAKE1 小时前
6.9【aAAA]
算法
Lewiis1 小时前
白话桶排序
数据结构·算法·golang·排序算法
非生而知之者1 小时前
基于灰狼算法优化的电量预测
python·算法·群体智能算法·电力预测
ywl4708120871 小时前
‌HashMap 1.8 的扩容机制(Resize)‌
算法·哈希算法
插件开发1 小时前
CUDA11-VS2015安装-工具链测试-Helloworld程序
c++·gpu·cuda