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

题目:

暴力双循环会时间超限

一次循环,不断更新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;
    }
相关推荐
小则又沐风a11 小时前
进一步了解进程---第四章 进程管理
java·服务器·前端
超梦dasgg11 小时前
并查集(Union-Find)详解 + Java 完整实现
java·数据结构·算法·图搜索
WL_Aurora11 小时前
Java集合框架核心组件
java
我是一颗柠檬11 小时前
【JDK8新特性】Stream流API上Day4
java·开发语言·后端
超梦dasgg11 小时前
拆分大对象 + 流式处理 + 不一次性加载全量数据
java·jvm·windows
仍然.11 小时前
算法题目---队列+宽搜(BFS)
算法·宽度优先
我是一颗柠檬11 小时前
【JDK8新特性】方法引用与构造器引用Day3
java·开发语言·后端·intellij-idea
在繁华处11 小时前
从零搭建轻灵(五):记忆系统与生产化特性
java·jvm·oracle
AbandonForce11 小时前
从入门到入土:二分查找算法
数据结构·算法
L_090711 小时前
【C++】数据结构之哈希表(散列表)
数据结构·c++·散列表