算法训练Day28 | ● 122.买卖股票的最佳时机II ● 55. 跳跃游戏 ● 45.跳跃游戏II

122.买卖股票的最佳时机II

cpp 复制代码
class Solution {
public:
    int maxProfit(vector<int>& prices) {
        vector<int> dp(2,0);
        dp[0] = -prices[0];
        for(int i=1; i<prices.size(); i++){
            dp[0] = max(dp[0], dp[1]-prices[i]);
            dp[1] = max(dp[1], prices[i]+dp[0]);
        }
        return dp[1];
    }
};

参考文章:代码随想录- 122.买卖股票的最佳时机II

55. 跳跃游戏

cpp 复制代码
class Solution {
public:
    bool canJump(vector<int>& nums) {
        int cover = 0;
        for(int i=0; i<=cover; i++){
            
            if(i+nums[i]>cover){
                cover = i+nums[i];
            }
            if(cover>=nums.size()-1) return true;
        }
        return false;

    }
};

参考文章:代码随想录-55. 跳跃游戏

45.跳跃游戏II

cpp 复制代码
class Solution {
public:
    int jump(vector<int>& nums) {
        if (nums.size() == 1) return 0;
        int cover = 0;
        int next_cover = 0;
        int count = 0;
        for(int i=0; i<=nums.size(); i++){
            
            if(i+nums[i]>next_cover){
                next_cover = i+nums[i];
            }
            if(i == cover){
                count++;
                cover = next_cover;
                if(next_cover>=nums.size()-1){
                    return count;
                }
                
                
                
            }
        }
        return -1;

    }
};

参考文章:代码随想录- 45.跳跃游戏II

相关推荐
じ☆冷颜〃7 小时前
黎曼几何驱动的算法与系统设计:理论、实践与跨领域应用
笔记·python·深度学习·网络协议·算法·机器学习
数据大魔方7 小时前
【期货量化实战】日内动量策略:顺势而为的短线交易法(Python源码)
开发语言·数据库·python·mysql·算法·github·程序员创富
POLITE37 小时前
Leetcode 23. 合并 K 个升序链表 (Day 12)
算法·leetcode·链表
楚来客8 小时前
AI基础概念之八:Transformer算法通俗解析
人工智能·算法·transformer
Echo_NGC22378 小时前
【神经视频编解码NVC】传统神经视频编解码完全指南:从零读懂 AI 视频压缩的基石
人工智能·深度学习·算法·机器学习·视频编解码
会员果汁8 小时前
leetcode-动态规划-买卖股票
算法·leetcode·动态规划
橘颂TA9 小时前
【剑斩OFFER】算法的暴力美学——二进制求和
算法·leetcode·哈希算法·散列表·结构与算法
地平线开发者10 小时前
征程 6 | cgroup sample
算法·自动驾驶
姓蔡小朋友11 小时前
算法-滑动窗口
算法