leecode100-买卖股票的最佳时期-贪心算法

题目

解法1

思路:有题目可知,针对每一个pricei,找到对于它来说,右边的最大值pricej,获得max(pricej-pricei)即可

复制代码
class Solution:
    def maxProfit(self, prices: List[int]) -> int:
        min_num = inf
        max_num = -1
        num = len(prices)
        max_list = [0] * num
        result = 0
        for i in range(num):
            j = num - i -1
            # print('j', j)
            max_num = max(prices[j], max_num)
            max_list[j] = max_num
        max_price = [max_list[i] - prices[i] for i in range(num)]
        result = 0 if max(max_price)<0 else max(max_price)
        return result

解法2

换个角度

思路:有题目可知,针对每一个pricei,找到对于它来说,左边的最小值min_num,获得max(pricei-min_num)即可

cpp 复制代码
class Solution:
    def maxProfit(self, prices: List[int]) -> int:
        num = len(prices)
        min_num = float('-inf')
        result = 0
        for i in range(num):
            min_num = min(min_num, prices[i])
            result = max(prices[i]-min_num, result)
        return result
相关推荐
峥无18 小时前
从0到1手撕红黑树:封装实现 my_map 与 my_set(SGI-STL 源码级深度解析)
开发语言·c++·笔记·算法·stl
北斗落凡尘18 小时前
LangGraph 入门实战(11)--输出模式
后端·python·langchain
不会代码的小猴19 小时前
3. 控件学习1
开发语言·c++·笔记·qt·算法
雪碧聊技术19 小时前
安装Python(保姆级教程)
python·版本更新·python下载
203号居民20 小时前
LeetCode hot 100 —41. 缺失的第一个正数
数据结构·算法·leetcode
张龙68721 小时前
uv 全面指南:比 pip 快 100 倍的 Python 包管理器,从安装到团队落地
后端·python
@HNUSTer1 天前
Python数据可视化科技图表绘制系列教程(八)
python·数据可视化·科技论文·专业制图·科研图表
专注仿真1 天前
问答大模型技术方案算法实现-熵权法融合算法 + 交叉编码器重排算法
人工智能·python·算法·语言模型·问答大模型关键算法·熵权融合算法·交叉编码器重排算法
满怀冰雪1 天前
22-使用 PaddleClas 快速训练图像分类模型
人工智能·python·机器学习·分类·数据挖掘·paddlepaddle
gb42152871 天前
python中Web应用服务器
开发语言·前端·python