【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;
    }
};
相关推荐
zander2583 分钟前
35. 搜索插入位置:从边界语义理解二分查找
数据结构·算法·leetcode
程序喵大人7 分钟前
【C++进阶】STL容器与迭代器 - 10 把容器、迭代器和数据流串成一个小程序
开发语言·c++·容器·小程序·迭代器·stl
汤愈韬8 分钟前
模型求解算法
人工智能·算法·机器学习
Keven_1126 分钟前
算法札记:DP中的滚动数组
算法·滚动数组
luj_176827 分钟前
随机性在算法与占卜中的共通原理
c语言·开发语言·c++·经验分享·算法
Lazionr35 分钟前
vector初识——从动态数组到STL核心容器
开发语言·c++
yyds_yyd_1008640 分钟前
3731. 找出缺失的元素(2026.08.04)
c++·leetcode
Chen—LSN1 小时前
C语言——深度理解指针(5)
c语言·数据结构·算法·排序算法
呱呱巨基1 小时前
CMake基础
linux·c++·笔记·学习
佳児素花痴╮3 小时前
树的基础知识与查找排序算法
数据结构·算法