hot100-63买卖股票的最佳时机

一、题目

给定一个数组prices,它的第 i 个元素 pricesi表示一支给定股票第 i 天的价格,只能选择某一天买入这只股票,并且选择未来某一个不同的日子卖出该股票,设计一个算法来计算所能获取的最大利润。返回最大利润,如果不能获取任何利润,返回0。

二、思路

1、遍历数组,记录最小买入价格,每一天都尝试以当前价格卖出,最大利润 = 当前价格 - 历史最低买入价,比较今天卖能赚多少,就能计算出当前的最大利润。

三、代码

java 复制代码
class Solution {
    public int maxProfit(int[] prices) {
        int minPrice = Integer.MAX_VALUE,maxProfit = 0,curProfit = 0;
        for(int price : prices){
            if(minPrice > price){
                minPrice = price;
            }
            curProfit = price - minPrice;
            if(maxProfit < curProfit){
                maxProfit = curProfit;
            }
        }
        return maxProfit;
    }
}
相关推荐
Chester_19997 小时前
CSP202203C.计算资源调度器
开发语言·数据结构·c++·蓝桥杯
裕晟资质规划8 小时前
武器装备科研生产单位保密资质申请方法论:条件模型与流程拆解
人工智能·算法
en.en..9 小时前
C语言 标准输入 / 输出缓冲区
算法
吃好睡好便好11 小时前
查找函数的使用
学习·算法·matlab·生活·查找函数
学习星球11 小时前
单调栈——从“找下一个更大的“到柱状图中的最大矩形
数据库·c++·算法·leetcode·xcode
专注仿真12 小时前
Spring AI 实现智能对话系统项目指南
数据结构·spring·机器学习
靠沿12 小时前
贪心算法专题(二)
算法·贪心算法
间歇性努力持续性发呆的野生快乐选手12 小时前
高级数据结构:树状数组
数据结构
猎头南楼13 小时前
具身智能模型部署方向的能力要求与技术栈梳理
人工智能·深度学习·算法
啥都想学点的研究生14 小时前
一篇文章讲清楚:线性回归问题的求解——正规方程法
算法·机器学习·线性回归