JZ-075-股票的最大利润

股票的最大利润

题目描述

可以有一次买入和一次卖出,买入必须在前。求最大收益。

  • 例子:题目描述 [7, 1, 5, 3, 6, 4]
  • 最大利润为 6 - 1 = 5

题目链接: 股票的最大利润

代码

/**
 * 标题:股票的最大利润
 * 可以有一次买入和一次卖出,买入必须在前。求最大收益。
 * 例子:题目描述 [7, 1, 5, 3, 6, 4]
 * 最大利润为 6 - 1 = 5
 */
public class Jz75 {


    /**
     * 使用贪心策略,假设第 i 轮进行卖出操作,买入操作价格应该在 i 之前并且价格最低。
     */
    public int maxProfit(int[] prices) {
        if (prices == null || prices.length == 0) {
            return 0;
        }
        int soFarMin = prices[0];
        int maxProfit = 0;
        for (int i = 1; i < prices.length; i++) {
            soFarMin = Math.min(soFarMin, prices[i]);
            maxProfit = Math.max(maxProfit, prices[i] - soFarMin);
        }
        return maxProfit;
    }

    public static void main(String[] args) {
    
    }
}

【每日寄语】 融四岁,能让梨;弟于长,宜先知。

posted @   醉舞经阁  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示