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

题目:

暴力双循环会时间超限

一次循环,不断更新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;
    }
相关推荐
TAN-90°-14 分钟前
Java 3——getter和setter super()关键字
java·开发语言
wand codemonkey15 分钟前
(二十七)Maven(依赖)【安装】+【项目结构】
java·开发语言·maven
linda公馆17 分钟前
Maven项目报错:java:错误:不支持发行版本 5
java·开发语言·maven
汉克老师18 分钟前
GESP6级C++考试语法知识(五、格雷码)
c++·算法·位运算·异或·gesp6级·gesp六级·格雷码
Ulyanov26 分钟前
《从质点到位姿:基于Python与PyVista的导弹制导控制全栈仿真》: 可视化革命——基于 PyVista 的 3D 战场构建与实时渲染
开发语言·python·算法·3d·系统仿真
,,?!,27 分钟前
数据结构算法-排序算法
数据结构·算法·排序算法
学习中.........31 分钟前
常见设计模式
java·设计模式
敖正炀1 小时前
JDBC 到 ORM:Spring Data JDBC、JPA 与 MyBatis 的定位与选型
java
小白编程锤炼1 小时前
深入解析:质量门禁
人工智能·算法·架构·vibe-coding
Henray20241 小时前
最低公共祖先 LCA
java·面试