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

题目:

暴力双循环会时间超限

一次循环,不断更新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;
    }
相关推荐
Lumos1868 小时前
51单片机从零到实战(8)——串口通信
算法
倒流时光三十年8 小时前
Logback 系列(7):常用 Appender(控制台 / 文件 / 滚动文件)
java·前端·logback
极客先躯8 小时前
高级java每日一道面试题-2026年04月18日-实战篇[Docker]-如何处理金融行业的时序数据容器化?
java·运维·docker·容器·金融·时序数据·高级面试
hdsoft_huge8 小时前
SpringBoot系列18:SpringSecurity登录鉴权,JWT无状态Token认证完整流程(生产级落地)
java·spring boot·后端
野蛮人6号8 小时前
黑马天机学堂系列问题之选集8本地服务报错
java·spring cloud·黑马程序员·天机学堂·黑马天机学堂
小帽子_1239 小时前
大功率 PCS 双环闭环控制算法原理与实现
算法
L-影9 小时前
单体项目结构
java·开发语言
wuqingshun3141599 小时前
MySQL 如何解决深度分页问题?
java·mysql·面试
buhuizhiyuci9 小时前
【算法篇】位运算 —— 基础篇
java·数据库·算法
laboratory agent开发9 小时前
企业AI Agent落地前,先回答四个工程问题
java·前端·人工智能