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

题目:

暴力双循环会时间超限

一次循环,不断更新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;
    }
相关推荐
夜天炫安全2 小时前
数据结构中所需的C语言基础
c语言·数据结构·算法
2301_789015623 小时前
DS进阶:AVL树
开发语言·数据结构·c++·算法
曹牧4 小时前
BeanUtils.copyProperties‌
java
QWQ___qwq4 小时前
Java线程安全深度总结:基本类型与引用类型的本质区别
java·安全·面试
识君啊5 小时前
Java异常处理:中小厂面试通关指南
java·开发语言·面试·异常处理·exception·中小厂
zyq99101_16 小时前
优化二分查找:前缀和降复杂度
数据结构·python·蓝桥杯
qyzm6 小时前
天梯赛练习(3月13日)
开发语言·数据结构·python·算法·贪心算法
月月玩代码6 小时前
Actuator,Spring Boot应用监控与管理端点!
java·spring boot·后端
逆境不可逃6 小时前
LeetCode 热题 100 之 64. 最小路径和 5. 最长回文子串 1143. 最长公共子序列 72. 编辑距离
算法·leetcode·动态规划
CoderCodingNo7 小时前
【GESP】C++五级练习题 luogu-P1182 数列分段 Section II
开发语言·c++·算法