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

题目:

暴力双循环会时间超限

一次循环,不断更新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;
    }
相关推荐
qq_43355454几秒前
C++ manacher(求解回文串问题)
开发语言·c++·算法
歌_顿10 分钟前
知识蒸馏学习总结
人工智能·算法
浩瀚地学12 分钟前
【Java】常用API(二)
java·开发语言·经验分享·笔记·学习
闲看云起42 分钟前
LeetCode-day6:接雨水
算法·leetcode·职场和发展
没学上了1 小时前
VLM_一维离散卷积与二维离散卷积(还是复习感觉还行)
算法
hashiqimiya1 小时前
springboot事务触发滚动与不滚蛋
java·spring boot·后端
黛色正浓1 小时前
leetCode-热题100-贪心合集(JavaScript)
javascript·算法·leetcode
PPPHUANG1 小时前
一次 CompletableFuture 误用,如何耗尽 IO 线程池并拖垮整个系统
java·后端·代码规范
轻微的风格艾丝凡1 小时前
嵌入式定时器计时技巧:用有符号数省略溢出判断的底层逻辑与实践
数据库·算法·dsp开发·嵌入式软件