【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;
    }
};
相关推荐
汉克老师3 分钟前
GESP2026年6月认证C++二级( 第三部分编程题(1、完全平方数计数))精讲
c++·循环·枚举算法·gesp2级·平方数·逆向枚举·区间判断
wuminyu4 分钟前
markword在高并发场景下变化剖析
java·linux·c语言·jvm·c++
星夜夏空996 分钟前
C++学习(1) ——C与C++
c语言·c++·学习
程序员杰哥8 分钟前
接口自动化测试项目框架详解
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
旖-旎13 分钟前
QT界面优化(6)
开发语言·c++·qt
想你依然心痛15 分钟前
AtomCode在算法竞赛中的实战体验:LeetCode周赛辅助编程
linux·算法·leetcode
SilentSamsara19 分钟前
模型部署方案选型:REST/gRPC/批量推理/边缘部署的场景决策
人工智能·深度学习·算法·机器学习
UP_Continue20 分钟前
AutoCAD--图形命令和选项
c++·autopilot
多年小白20 分钟前
第八篇 模拟面试套卷
人工智能·ai·面试·职场和发展
zzz_236826 分钟前
【Java实习面试算法冲刺】哈希!
java·算法·面试