121. 买卖股票的最佳时机

给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。

你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。

返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。

Answer:寻找售出股票前的最低成本

java 复制代码
class Solution {
    public int maxProfit(int[] prices) {
        int n = prices.length;
        int minPrice = Integer.MAX_VALUE;
        int res = 0;
        for(int i=0; i<n; i++) {
            minPrice = Math.min(minPrice, prices[i]);
            res = Math.max(prices[i]-minPrice, res);
        }
        return res;
    }
}
相关推荐
小于不是小鱼呀4 分钟前
手撕 K-Means
人工智能·算法·机器学习
m0_740154675 分钟前
K-Means颜色变卦和渐变色
算法·机器学习·kmeans
东皇太星38 分钟前
SIFT算法详细原理与应用
图像处理·算法·计算机视觉
鑫鑫向栄1 小时前
[蓝桥杯]堆的计数
数据结构·c++·算法·蓝桥杯·动态规划
緈福的街口1 小时前
【leetcode】3. 无重复字符的最长子串
算法·leetcode·职场和发展
麦仓分享1 小时前
C++算法动态规划3
算法·动态规划
HEX9CF2 小时前
【Linux】awk 命令详解及使用示例:结构化文本数据处理工具
linux·chrome·算法
Cl_rown去掉l变成C2 小时前
第J3-1周:DenseNet算法 实现乳腺癌识别
人工智能·pytorch·算法
努力学习的小廉2 小时前
我爱学算法之—— 前缀和(中)
开发语言·redis·算法
保持学习ing2 小时前
黑马Java面试笔记之 集合篇(算法复杂度+ArrayList+LinkedList)
java·笔记·算法·面试