最佳买股票的时机------题解报告

题目:

暴力双循环会时间超限

一次循环,不断更新min和sum值

时间复杂度为O(n),空间复杂度为O(1)

写完之后看了一眼题解,发现没有更好的方法

java 复制代码
 public int maxProfit(int[] prices) {
        int sum =0,min=prices[0];
        for(int i=1;i <prices.length;i++)
        {
            min=Math.min(min,prices[i]);
            if(prices[i]-min>sum)
            {
                sum=prices[i]-min;
            }
        }
        return sum;
    }
相关推荐
一个响当当的名号14 分钟前
lectrue9 索引并发控制
java·开发语言·数据库
2401_8321319514 分钟前
模板错误消息优化
开发语言·c++·算法
金枪不摆鳍14 分钟前
算法--二叉搜索树
数据结构·c++·算法
进阶小白猿18 分钟前
Java技术八股学习Day30
java·开发语言·学习
近津薪荼19 分钟前
优选算法——双指针6(单调性)
c++·学习·算法
向哆哆1 小时前
画栈 · 跨端画师接稿平台:基于 Flutter × OpenHarmony 的整体设计与数据结构解析
数据结构·flutter·开源·鸿蒙·openharmony·开源鸿蒙
helloworldandy1 小时前
高性能图像处理库
开发语言·c++·算法
2401_836563181 小时前
C++中的枚举类高级用法
开发语言·c++·算法
bantinghy1 小时前
Nginx基础加权轮询负载均衡算法
服务器·算法·nginx·负载均衡
hhy_smile1 小时前
Class in Python
java·前端·python