【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;
    }
};
相关推荐
君义_noip6 分钟前
信息学奥赛一本通 4017:【GESP2309三级】小杨的储蓄 | 洛谷 B3867 [GESP202309 三级] 小杨的储蓄
c++·算法·gesp·信息学奥赛
高山上有一只小老虎20 分钟前
判断是否为数独数组
java·算法
渡我白衣21 分钟前
计算机组成原理(4):计算机的层次结构与工作原理
运维·c语言·网络·c++·人工智能·笔记·硬件架构
宝贝儿好27 分钟前
【强化学习】第二章:老虎机问题、ε-greedy算法、指数移动平均
人工智能·python·算法
kkk_皮蛋28 分钟前
深入理解 WebRTC 临界锁实现与 C++ RAII 机制
开发语言·c++·webrtc
CoovallyAIHub29 分钟前
超越深度学习:量子优化如何通过算法与硬件重塑AI
深度学习·算法·计算机视觉
mit6.82432 分钟前
模拟|str_dp
算法
前端小L34 分钟前
回溯算法专题(九):棋盘上的巅峰对决——经典「N 皇后」问题
数据结构·算法
DR-ZF-34 分钟前
20251210 线性最小二乘法迭代拟合(梯度下降)
算法·机器学习·最小二乘法