【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;
    }
};
相关推荐
Brilliantwxx12 分钟前
【C++】 继承与多态(中)
开发语言·c++·笔记·算法
程序员雷欧7 小时前
大厂计算机网络面试高频题
计算机网络·面试·职场和发展
青瓦梦滋7 小时前
C++的IO流与STL的空间配置器
开发语言·c++
鱼很腾apoc9 小时前
【学习篇】第20期 超详解 C++ 多态:从语法规则到底层原理
java·c语言·开发语言·c++·学习·算法·青少年编程
不吃土豆的马铃薯10 小时前
4.SGI STL 二级空间配置器 allocate 与_S_refill 源码解析
c语言·开发语言·c++·dreamweaver·内存池
blackorbird10 小时前
M4 MacBook Air外接RTX 5090实现3A游戏与AI加速
人工智能·游戏
JAVA学习通10 小时前
美团AI面试 实习一面面经
面试·职场和发展
小许同学记录成长10 小时前
三维重建技术文档
算法·无人机
fufu031111 小时前
vscode配置C/C++环境,用GDB调试简单程序分享
开发语言·c++