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
相关推荐
武子康36 分钟前
H3-World 为何在加载 LoRA 前,先检查导入的代码?
人工智能·深度学习·算法
秋天的怀念_David1 小时前
算法一千零一夜 · 第二十八夜 注册
java·程序人生·算法
合尘猫2 小时前
图片表格变结构化数据:OCR 后的三个坑
python·ocr
小小张说故事2 小时前
Python 里弱引用到底弱在哪:拆开 weakref.ref、回调陷阱和 WeakValueDictionary
python
用户019027581612 小时前
用 DuckDB 存查 A 股 K 线:零服务、SQL 直接分析
python
NEFU_Jyj3 小时前
贝尔数(组合数学)
算法
程序员果子4 小时前
本体构建方法
人工智能·python·知识图谱·agent框架·本体
希和20274 小时前
C语言程序设计题|有序数组插入数字冒泡排序
c语言·数据结构·算法
Pniubi4 小时前
力扣73 矩阵置零
算法·leetcode·矩阵
天天被压力4 小时前
【A股分钟级高频数据完全手册 #11】券商实时行情数据接口:实时交易(券商源)接入与字段
java·人工智能·python