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

题目:

暴力双循环会时间超限

一次循环,不断更新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;
    }
相关推荐
五仁烧饼11 分钟前
Unity Addressables 资源依赖治理:规则约束、自动修复与全链路防护
java·unity·游戏引擎
spider_xcxc12 分钟前
Jenkins 遇见 Argo CD:构建可靠 GitOps 流水线的实战指南
java·开发语言·servlet
AI人工智能+电脑小能手18 分钟前
【大白话说Java面试题 第214题】【10_网络协议篇】第5题:说一下 TCP 协议的三次握手和四次挥手
java·网络协议·tcp·三次握手·四次挥手
我叫唧唧波18 分钟前
【Java】Java 基础系统学习笔记
java·笔记·学习
好好沉淀32 分钟前
Spring @Validated和Validation注解 校验机制完全指南
java·数据库·后端
灵枢时代34 分钟前
小程序在生鲜配送行业,如何设计夜间预约和次日达的订单处理流程?
数据结构·人工智能·小程序
June`36 分钟前
常量内存和只读缓存
c++·人工智能·算法·cuda
唐青枫36 分钟前
Java RxJava 实战指南:从 Observable、Flowable 到线程切换和背压处理
java
一条大祥脚38 分钟前
ABC468 扫描线|贡献法|二阶差分|线段树优化DP
数据结构·算法
happyprince42 分钟前
篇2-bitsandbytes-具体观-算法与实现剖析
算法