leetcode121买卖股票的最佳时机

一、问题描述

二、解题思路

可以使用贪心算法来解决这个问题。

MAX记录的是i位置右边的最大值,则i位置买卖股票的最大收益即为MAX-pricesi。ret用于记录最大的收益,初始化为0。从后往前遍历prices向量,更新ret值,再更新MAX值,最后返回ret,即为所求。

三、代码实现

cpp 复制代码
class Solution {
public:
    int maxProfit(vector<int>& prices) {
        int MAX=-1;
        int ret=0;
        for(int i=prices.size()-1;i>=0;i--){
            ret=max(ret,MAX-prices[i]);
            MAX=max(MAX,prices[i]);
        }
        return ret;
    }
};
相关推荐
(Charon)6 小时前
【C++】定时器进阶:使用最小堆管理定时任务
c++·算法
hansang_IR7 小时前
【题解】 [省选联考 2021 A/B 卷] 卡牌游戏
c++·算法
这个DBA有点耶7 小时前
COUNT慢不是因为用了*,是这5个原因——1000万行数据实测+执行计划深度解析
数据库·mysql·算法
贾伟康7 小时前
【口算王|01】HarmonyOS ArkTS 口算题生成实战:按年级、运算类型和难度生成可控题目
算法·harmonyos·arkts·随机生成·口算题
lzx_0027 小时前
C++11(一)
开发语言·c++·算法
529宝宝起名网7 小时前
用 Python 实现名字寓意评分算法:基于 NLP 语义分析的名字内涵深度评估
python·算法·自然语言处理
ocean21037 小时前
2025-2026年AI提效与实践大厂面试高频问题
人工智能·面试·职场和发展·提示词工程·ai提效
带多刺的玫瑰9 小时前
Leecode#26刷题之删除有序数组中的重复项
数据结构·算法·leetcode
小七在进步9 小时前
C++入门(2)
java·jvm·c++
en.en..9 小时前
C语言核心解析:#define与typedef本质区别
开发语言·c++·算法