力扣55. 跳跃游戏(动态规划)

Problem: 55. 跳跃游戏

文章目录

题目描述

思路

我们将问题稍做转换每次求取当前位置可以走到的最远位置 ,在此基础上我们将最终判断是否能走出整个nums;同时我们要判断中途会不会遇到某个位置是0使得不能继续走下去

复杂度

时间复杂度:

O ( n ) O(n) O(n);其中 n n n为数组nums的大小

空间复杂度:

O ( 1 ) O(1) O(1);

Code

cpp 复制代码
class Solution {
public:
    /**
     * Dynamic programming
     * 
     * @param nums Given array
     * @return bool
     */
    bool canJump(vector<int>& nums) {
        int n = nums.size();
        int farthest = 0;
        for (int i = 0; i < n - 1; ++i) {
            farthest = max(farthest, i + nums[i]);
            //Meet to 0
            if (farthest <= i) {
                return false;
            }
        }
        return farthest >= n - 1;
    }
};
相关推荐
Cccp.12336 分钟前
【leetcode】(十四)从暴力递归到动态规划
数据结构·算法·leetcode·动态规划
旖旎夜光1 小时前
LeetCode 215: 数组中的第K个最大元素 (快速排序) —— 题解
c++·学习·算法·leetcode·力控
德彪稳坐倒骑驴2 小时前
Leetcode力扣刷题记录与题解
算法·leetcode·职场和发展
java_nnnn16 小时前
LeetCode刷题滑动窗口(水果成篮+找到字符串中所有字母的异位词)Java
java·开发语言·leetcode
郝学胜-神的一滴17 小时前
游戏设计:原型与开发 08:我们到底在为谁做游戏
程序人生·游戏·游戏引擎·游戏开发·游戏策划
五仁烧饼18 小时前
动手学 Shader Graph(二):溶解与边缘发光
游戏·unity·shader·shader graph
文丑颜不良啊18 小时前
LeetCode276~300题目解析
java·leetcode
星马梦缘20 小时前
人工智能学院游戏设计大赛决赛 · 执行提纲
数据库·人工智能·游戏
傅科摆 _ py20 小时前
链表力扣复习
数据结构·leetcode·链表
星马梦缘1 天前
关于人工智能学院游戏设计大赛决赛的内部分工通知
数据库·人工智能·游戏