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

题目:

暴力双循环会时间超限

一次循环,不断更新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;
    }
相关推荐
uNke DEPH14 小时前
Spring Boot的项目结构
java·spring boot·后端
xixingzhe214 小时前
idea启动vue项目
java·vue.js·intellij-idea
wzl2026121314 小时前
企业微信定时群发技术实现与实操指南(原生接口+工具落地)
java·运维·前端·企业微信
凌波粒14 小时前
Java 8 “新”特性详解:Lambda、函数式接口、Stream、Optional 与方法引用
java·开发语言·idea
曹牧14 小时前
Eclipse:悬停提示(Hover)
java·ide·eclipse
oyzz12015 小时前
Spring EL 表达式的简单介绍和使用
java·后端·spring
椰羊~王小美15 小时前
随机数概念及算法
算法
iNgs IMAC15 小时前
Redis之Redis事务
java·数据库·redis
程序员小假15 小时前
向量检索的流程是怎样的?Embedding 和 Rerank 各自的作用?
java·后端
阿Y加油吧16 小时前
算法实战笔记:LeetCode 169 多数元素 & 75 颜色分类
笔记·算法·leetcode