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

题目:

暴力双循环会时间超限

一次循环,不断更新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;
    }
相关推荐
Knight_AL3 小时前
使用 Nginx 为内网 Java 服务实现 HTTPS
java·nginx·https
提笔忘字的帝国3 小时前
【2026版】macOS 使用 Homebrew 快速安装 Java 21 教程
java·开发语言·macos
抹香鲸之海3 小时前
Easyexcel 多级横向合并表头
java·开发语言·windows
烟沙九洲3 小时前
JVM 堆内存分代
java·jvm
less is more_09303 小时前
文献学习——计及分时电价的电缆配电网多时段二阶段有功与无功协调快速鲁棒优化调度方法
笔记·学习·算法
BD_Marathon3 小时前
SpringMVC——bean加载控制
java·开发语言·数据库
进击的小头3 小时前
18_C语言算法面试与进阶:高频算法题实战与学习路线规划
c语言·算法·面试
im_AMBER3 小时前
Leetcode 97 移除链表元素
c++·笔记·学习·算法·leetcode·链表
悟空码字3 小时前
SpringBoot + Redis分布式锁深度剖析,性能暴涨的秘密全在这里
java·spring boot·后端
奋进的芋圆3 小时前
Spring Boot中实现定时任务
java·spring boot·后端