【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;
    }
};
相关推荐
贾斯汀玛尔斯2 分钟前
每天学一个算法--Top-K 查询(Top-K Retrieval)
算法
菜鸟丁小真22 分钟前
LeetCode hot100 -131.分割回文串
数据结构·算法·leetcode·知识点总结
Yuk丶25 分钟前
Procedural Dialogue Engine - UE4程序化对话系统的技术实现
c++·游戏引擎·ue4·游戏程序·虚幻
贾斯汀玛尔斯27 分钟前
每天学一个算法--PageRank
算法
自信1504130575930 分钟前
重生之从0开始学习c++之string(上)
开发语言·c++·学习
子琦啊30 分钟前
【算法复习】滑动窗口(同向区间指针)
算法
BestOrNothing_201531 分钟前
C++零基础到工程实战(4.3.8):基于 vector 实现一个简易缓存数据库
c++·vector·string·缓存数据库·stringstream·键值存储·getline
啊我不会诶38 分钟前
【自用复习】牛客每日一题2026.4.18 最大稳定数值
算法·深度优先
笨笨饿40 分钟前
66_C语言与微控制器底层开发
linux·c语言·网络·数据结构·算法·机器人·个人开发
苏宸啊1 小时前
C++异常
c++