11.买卖股票的最佳时机Ⅰ

文章目录

  • 题目简介
  • 题目解答
    • 解法一:一次遍历
      • 代码:
      • 复杂度分析:
  • 题目链接

大家好,我是晓星航。今天为大家带来的是 买卖股票的最佳时机面试题Ⅰ 相关的讲解!😀

题目简介

在这里插入图片描述
在这里插入图片描述

题目解答

解法一:一次遍历

假设给定的数组为:[7,1,5,3,6,4]
在这里插入图片描述
思路:
在这里插入图片描述

代码:

class Solution {public int maxProfit(int[] prices) {int minprice = Integer.MAX_VALUE;int maxprofit = 0;for (int i = 0;i < prices.length; i++) {if (prices[i] < minprice) {minprice = prices[i];} else if (prices[i] - minprice > maxprofit) {maxprofit = prices[i] - minprice;}}return maxprofit;}
}

在这里插入图片描述
将利润初始化为0,最低价格初始化为整形的最大值,这种做法通常用于初始化一个表示最小值的变量,这样在后续的比较中,如果有更小的值被找到,就可以更新 minprice 的值。
在这里插入图片描述
使用for循环遍历一次数组,如果有价格比当前最低成本之minprice还低,就将minprice更新为prices当前取到的值。如果在遍历的时候maxprofit最大利润有更高的,就将最大利润替换为prices[i]-minprice(利润=销售额-成本)。
在这里插入图片描述
按照题目要求返回最大利润

复杂度分析:

  • 时间复杂度:O(n),只需要遍历一次。
  • 空间复杂度:O(1),只使用了常数个变量。

题目链接

121.买卖股票的最佳时机
感谢各位读者的阅读,本文章有任何错误都可以在评论区发表你们的意见,我会对文章进行改正的。如果本文章对你有帮助请动一动你们敏捷的小手点一点赞,你的每一次鼓励都是作者创作的动力哦!😘

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python计算器程序代码

from tkinter import * import random class App: def __init__(self, master): self.master master self.initwidgets() #表达式的值 self.expr None def initwidgets(self): #定义一个输入组件 self.show Label(relief SUNKEN, font (Courier New, 24), width 25, bg …

Qt Tab键切换焦点顺序:setTabOrder()

使用这个方法setTabOrder()&#xff0c;设置使得焦点的顺序从前到后依次是&#xff1a; ui->lineEdit》 ui->lineEdit_2》ui->lineEdit_3 》ui->lineEdit_4 焦点先在ui->lineEdit上&#xff0c;当按下Tab键时&#xff0c;焦点跑到ui->lineEdit_2上。。。按…

XC7VX690T-2FFG1761I 中文资料 XC7VX690T-2FFG1761引脚图及功能说明

XC7VX690T-2FFG 是由Xilinx&#xff08;赛灵思&#xff09;公司生产的FPGA&#xff08;Field Programmable Gate Array&#xff0c;现场可编程门阵列&#xff09;芯片。FPGA是一种可编程的集成电路&#xff0c;用户可以根据需要将其配置为具有特定逻辑功能的电路。 XC7VX690T-…

windows轻松管理nodejs 版本 升/降级 卸载等等

#nvm-windows 管理nodejs 版本神器# 不经意升级了node版本导致原有项目启动异常, 看到了node版本管理神器:nvm-windos 1,先下载 nvm >> git 选择如下安装包或 nvm-setup.exe文件 https://github.com/coreybutler/nvm-windows/releases/tag/1.1.12 2. 双击安装,下一…

EasyRecovery数据恢复软件2024最新免费无需激活版下载

EasyRecovery数据恢复软件是一款功能强大、操作简便的数据恢复工具&#xff0c;旨在帮助用户解决各种数据丢失问题。无论是由于误删除、格式化、磁盘损坏还是其他原因导致的数据丢失&#xff0c;EasyRecovery都能提供有效的恢复方案。以下是对EasyRecovery软件功能的详细介绍。…

搭建nacos集群

1.修改nacos/conf/application.properties 2.在数据库中执行nacos/conf/nacos-mysql.sql脚本 3.修改nacos/conf/cluster.conf文件 4.修改startup.sh文件模式为集群 5.启动服务 附&#xff1a;安装nginx 修改/usr/local/openresty/nginx/conf/nginx.confi文件 http{}中增加如下…

AnythingLLM+Ollama构建本地知识库

前言 这是一个全栈应用程序&#xff0c;可以将任何文档、资源&#xff08;如网址链接、音频、视频&#xff09;或内容片段转换为上下文&#xff0c;以便任何大语言模型&#xff08;LLM&#xff09;在聊天期间作为参考使用。此应用程序允许您选择使用哪个LLM或向量数据库&#…

新火种AI|正面硬刚OpenAI与谷歌?微软竟然偷偷自研出5000亿参数大模型!

在AI领域&#xff0c;微软公司一直以其独到的创新性和前瞻性而闻名。也正因此&#xff0c;它抢先在AI赛道嗅到商机&#xff0c;并极具预判性的投资了OpenAI&#xff0c;使其成为自己在AI赛道上的最强助力。不过&#xff0c;微软的野心不止于此。 根据The Information 5月6日的…

导电滑环质量如何评估

一. 外观尺寸检测 1. 外观检查 外观检测是导电滑环的基本检测内容之一&#xff0c;包括检查导电滑环是否存在表面损伤、划痕、变形等问题。在外观检测中&#xff0c;还需要关注滑环表面是否平整光洁&#xff0c;导电环和滑动环之间的安装是否牢固&#xff0c;是否有脱落和变形…

flowable多对并发网关跳转的分析

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 http://218.75.87.38:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a; h…

网络流 24 题」数字梯形 【费用流、拆点】

网络流 24 题」数字梯形 思路 对于规则 1 1 1&#xff0c;要求的是点不相交且边不相交&#xff0c;我们可以把边的容量设置成 1 1 1&#xff0c;把点拆分成入点和出点&#xff0c;将其内部的容量设置成 1 1 1&#xff0c;这样就可以限制点的流量。 把相应的点之间的边的费用…

C++基础中的存储类别

存储的类别是变量的属性之一&#xff0c;C语言定义了4种变量的存储类别&#xff0c;分别是auto变量、static变量、register变量和extern变量。以下重点介绍这几种类型。 一、auto变量 auto变量是C默认的存储类型。函数内未加存储类型说明的变量均被称为自动变量&#xff0c;即…