力扣每日一练(24-1-18)

经验一:不要把问题想复杂

Python:

python 复制代码
min_price = float('inf')
        max_profit = 0
        for price in prices:
            min_price = min(min_price, price)
            max_profit = max(max_profit, price - min_price)
        return max_profit

C#:

cs 复制代码
public int MaxProfit(int[] prices) {
    int minPrice = Int32.MaxValue;
    int maxProfit = 0;
    foreach (int price in prices) {
        minPrice = Math.Min(minPrice, price);
        maxProfit = Math.Max(maxProfit, price - minPrice);
    }
    return maxProfit;
}

一开始我想到的是引入波峰波谷的概念,但是不适用,想复杂了。

相关推荐
星释12 分钟前
Rust 练习册 82:Hamming与字符串处理
开发语言·算法·rust
vir021 小时前
P12155 [蓝桥杯 2025 省 Java B] 消失的蓝宝
java·职场和发展·蓝桥杯
小张成长计划..1 小时前
【C++】16:模板进阶
c++·算法
AndrewHZ1 小时前
【图像处理基石】如何使用大模型进行图像处理工作?
图像处理·人工智能·深度学习·算法·llm·stablediffusion·可控性
AndrewHZ1 小时前
【图像处理基石】图像处理的基础理论体系介绍
图像处理·人工智能·算法·计算机视觉·cv·理论体系
稚辉君.MCA_P8_Java3 小时前
Gemini永久会员 Java实现的暴力递归版本
java·数据结构·算法
冯诺依曼的锦鲤3 小时前
算法练习:差分
c++·学习·算法
有意义4 小时前
栈数据结构全解析:从实现原理到 LeetCode 实战
javascript·算法·编程语言
鹿鹿鹿鹿isNotDefined4 小时前
逐步手写,实现符合 Promise A+ 规范的 Promise
前端·javascript·算法
封奚泽优4 小时前
下降算法(Python实现)
开发语言·python·算法