2025年-G4-Lc78--121. 买卖股票的最佳时机--(java版)

1.题目描述
在这里插入图片描述
2.思路
思路1:
做两轮排序,第一轮排序找到最小的那个数,然后再判断最小的那个数之后还有其他数吗,如果有在进行排序,选出最大的那个数,然后值相减。
问题要点:
(1)你需要找到一个买入和卖出的时间点,使得卖出的价格大于买入的价格,从而最大化利润。
(2)如果数组中的股票价格是递减的,你不能获得任何利润,此时最大利润为 0。
思路2:
在这里插入图片描述
3.代码实现

class Solution {
    public int maxProfit(int[] prices) {
    
    //初始化最小价格为最大值,最大利润为0

       int minPrice=Integer.MAX_VALUE;
       int maxProfit=0;

       //遍历价格数组
       for (int price : prices)
       {
        //如果当前价格更低,更新最小价格
        if(price<minPrice)
        {
            minPrice = price;
        }
        // 计算当前卖出时的利润
        else
        {
            int profit=price-minPrice;
            // 更新更大利润
            if(profit>maxProfit)
            {
                maxProfit= profit;
            }
        }
       }
       return maxProfit;

    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/970829.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

AI 编程工具—Cursor 进阶篇 数据分析

AI 编程工具—Cursor 进阶篇 数据分析 上一节课我们使用Cursor 生成了北京房产的销售数据,这一节我们使用Cursor对这些数据进行分析,也是我们尝试使用Cursor 去帮我们做数据分析,从而进一步发挥Cursor的能力,来帮助我们完成更多的事情 案例一 房产销售数据分析 @北京202…

【Python】错误异常

个人主页&#xff1a;Guiat 归属专栏&#xff1a;Python 文章目录 1. 错误和异常的概念1.1 错误1.2 异常 2. 常见的内置异常类型2.1 ZeroDivisionError2.2 IndexError2.3 KeyError2.4 TypeError 3. 异常处理机制3.1 try-except 语句3.2 try-except-else 语句3.3 try-except-fin…

ICASSP2023 | IE-FGSM | 通过增强欧拉方法提高对抗样本的可迁移性

Boosting Transferability of Adversarial Example via an Enhanced Euler’s Method 摘要-Abstract引言-Introduction相关工作-Related Work方法-Methodology实验-Experiments结论-Conclusion 论文链接 本文 “Boosting Transferability of Adversarial Example via an Enhan…

力扣 470. 用 Rand7() 实现 Rand10() 拒绝采样 等概率随机数生成

Problem: 470. 用 Rand7() 实现 Rand10() 文章目录 &#x1f37b; k 进制诸位生成 拒绝采样&#x1f37a; 朴素版&#x1f37a; 优化版 &#x1f37b; 等概率生成任何数大法 &#x1f37b; k 进制诸位生成 拒绝采样 &#x1f469;‍&#x1f3eb; 参考题解 ⏰ 时间复杂度&a…

Jvascript网页设计案例:通过js实现一款密码强度检测,适用于等保测评整改

本文目录 前言功能预览样式特点总结&#xff1a;1. 整体视觉风格2. 密码输入框设计3. 强度指示条4. 结果文本与原因说明 功能特点总结&#xff1a;1. 密码强度检测2. 实时反馈机制3. 详细原因说明4. 视觉提示5. 交互体验优化 密码强度检测逻辑总Html代码Javascript代码 前言 能…

无人机航迹规划: 梦境优化算法(Dream Optimization Algorithm,DOA)求解无人机路径规划MATLAB

一、梦境优化算法 梦境优化算法&#xff08;Dream Optimization Algorithm&#xff0c;DOA&#xff09;是一种新型的元启发式算法&#xff0c;其灵感来源于人类的梦境行为。该算法结合了基础记忆策略、遗忘和补充策略以及梦境共享策略&#xff0c;通过模拟人类梦境中的部分记忆…

【c++】【Linux】【进程】线程终止/崩溃 会导致进程终止/崩溃 吗?

【c】【Linux】【进程】线程终止/崩溃 会导致进程终止/崩溃 吗&#xff1f; 1.线程终止会导致进程终止吗&#xff1f; 在操作系统中&#xff0c;线程是进程的基本执行单元&#xff0c;一个进程可以包含一个或多个线程。 当一个子线程终止时&#xff0c;进程并不会因此自动终…

【动手学运动规划】5.5 基于PiecewiseJerk的路径优化方法

知我者&#xff0c;谓我心忧. 不知我者&#xff0c;谓我何求。— 佚名 黍离 &#x1f3f0;代码及环境配置&#xff1a;请参考 环境配置和代码运行! PiecewiseJerkOptimizer是Apollo中planning模块生成Path/Speed曲线的优化方法. 基于Frenet坐标系, 生成平滑, 安全的目标曲线. …

图论入门算法:拓扑排序(C++)

上文中我们了解了图的遍历(DFS/BFS), 本节我们来学习拓扑排序. 在图论中, 拓扑排序(Topological Sorting)是对一个有向无环图(Directed Acyclic Graph, DAG)的所有顶点进行排序的一种算法, 使得如果存在一条从顶点 u 到顶点 v 的有向边 (u, v) , 那么在排序后的序列中, u 一定…

英国学术论文规范,学术来源的基本知识

学术来源&#xff08;scholarly source&#xff09;&#xff0c;指的是在某一特定的学术研究领域由专家所写&#xff0c;给同行或者对此专业领域有兴趣的人所阅读&#xff0c;提供相关分析素材的研究成果。在国外留学中&#xff0c;虽然平时学校要求完成的作业多为reports&…

Java运维实战:问题定位-CPU突增排查

java程序最常见的故障场景就是CPU徒增的情况了&#xff0c;本片文章为你讲解java程序CPU突增的情况怎么进行排查 1、获取CPU消耗高的线程ID top -Hp 进程ID 然后输入大写P&#xff08;shiftp&#xff09;&#xff0c;就会将这个进程下的线程按照CPU消耗进行排序展示。 举例 然…

使用 Ansys MotorCAD 进行轴向磁通电机设计

新的 MotorCAD 机器拓扑&#xff1a;轴向磁通电机 轴向磁通量可用拓扑 Ansys MotorCAD支持3种不同的轴向磁通拓扑&#xff0c;包括&#xff08;双转子 - 单定子&#xff09;、&#xff08;单转子 - 单定子&#xff09;和&#xff08;单转子 - 双定子&#xff09; 双转子 - 单…

【深度学习】深度学习和强化学习算法——深度 Q 网络DQN

深度 Q 网络&#xff08;Deep Q-Network, DQN&#xff09; 详解 什么是DQNDQN 的背景DQN 训练流程 2 DQN 的核心思想2.1 经验回放&#xff08;Experience Replay&#xff09;2.2 目标网络&#xff08;Target Network&#xff09;2.3 ε-贪心策略&#xff08;ε-Greedy Policy&a…

学习数据结构(10)栈和队列下+二叉树(堆)上

1.关于栈和队列的算法题 &#xff08;1&#xff09;用队列实现栈 解法一&#xff1a;&#xff08;参考代码&#xff09; 题目要求实现六个函数&#xff0c;分别是栈初始化&#xff0c;入栈&#xff0c;移除并返回栈顶元素&#xff0c;返回栈顶元素&#xff0c;判空&#xff0…

芯片引脚描述或电路原理图中的Ipd、Ipu是什么意思?

问&#xff1a;物理层芯片KSZ8081RNB的Data Sheet对某些引脚类型的说明如下&#xff1a; 请说明其中Ipd、Ipu的意思是什么&#xff1f; 答&#xff1a; I&#xff1a;表示该引脚是一个 输入引脚&#xff0c;即该引脚用于接收信号。O&#xff1a;表示该引脚是一个 输出引脚&a…

[操作系统] 基础IO:系统文件I/O

在 Linux 操作系统中&#xff0c;文件 I/O&#xff08;输入/输出&#xff09;是程序与文件系统交互的基础。理解文件 I/O 的工作原理对于编写高效、可靠的程序至关重要。本文将深入探讨系统文件 I/O 的机制。 一种传递标志位的方法 在 Linux 中&#xff0c;文件的打开操作通常…

Mybatis-扩展功能

逻辑删除乐观锁 MyBatisPlus从入门到精通-3&#xff08;含mp代码生成器&#xff09; Db静态工具类 Spring依赖循环问题 代码生成器 MybatisPlus代码生成器 枚举处理器 我们这里用int来存储状态 需要注解&#xff0c;很不灵活 希望用枚举类来代替这个Integer 这样的话我…

ECharts 实战指南:组件封装+地图轮廓高亮 + 自定义 Tooltip+轮播+锥形柱子

大家好&#xff0c;我是一诺。今天我们将深入探讨 ECharts&#xff0c;这个功能强大的数据可视化库。 无论你是已经在使用 ECharts&#xff0c;还是正计划用它来创建一些炫酷的图表&#xff0c;这篇文章都会对你有所帮助。 我们将从渲染模式开始&#xff0c;逐步深入到如何封…

【MyBatis】_使用XML实现MyBatis

目录 1. 配置yml配置文件 1.2 配置数据库 1.3 配置xml的路径 2. xml文件中实现数据库的增删查改操作 2.1 各文件内容 2.2 编写细节 MyBatis作为一个持久层框架&#xff0c;用于进行数据库操作。 MyBatis的实现方式有两种&#xff1a;&#xff08;1&#xff09;注解&…

单链表的概念,结构和优缺点

1. 概念 链表是一种物理存储结构上非连续&#xff0c;非顺序的存储结构&#xff0c;数据元素的逻辑顺序是通过链表中的指针链接次序实现的。 2. 单链表的结构 单链表是由一系列节点组成的线性结构&#xff0c;每个结点包含两个域。&#xff1a;数据域和指针域。 数据域用来…