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

题目:

暴力双循环会时间超限

一次循环,不断更新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;
    }
相关推荐
YGGP1 分钟前
吃透 Golang 基础:数据结构之 Map
开发语言·数据结构·golang
盖世英雄酱581362 分钟前
Java 内存管理技巧(新手必看集合篇)
java
码农小灰5 分钟前
Java 8 Stream API 入门到实践详解
java·java案例
BUG收容所所长7 分钟前
二分查找的「左右为难」:如何优雅地找到数组中元素的首尾位置
前端·javascript·算法
步、步、为营10 分钟前
.NET 事件模式举例介绍
java·开发语言·.net
cui_hao_nan13 分钟前
设计模式——模板方法
java·设计模式
小吕学编程13 分钟前
HttpServletRequest常用方法
java·http
在未来等你14 分钟前
Java并发编程实战 Day 11:并发设计模式
java·设计模式·多线程·并发编程·threadlocal·生产者消费者·读写锁
李少兄26 分钟前
解决 idea提示`SQL dialect is not configured` 问题
java·sql·intellij-idea
weixin_4196583130 分钟前
数据结构之栈
数据结构