当前位置: 首页 > ds >正文

【Hot 100】121. 买卖股票的最佳时机

目录

  • 引言
  • 买卖股票的最佳时机
    • 我的解题

请添加图片描述

  • 🙋‍♂️ 作者:海码007
  • 📜 专栏:算法专栏
  • 💥 标题:【Hot 100】121. 买卖股票的最佳时机
  • ❣️ 寄语:书到用时方恨少,事非经过不知难!

引言

今天开始贪心算法篇章,前一个星期有些事情耽搁了,今天继续。

买卖股票的最佳时机

  • 🎈 题目链接:
  • 🎈 做题状态:

我的解题

只需要遍历一次,而且是在第一次遍历就记录当前最小的股票价格,然后再计算卖出当前股票能赚到的利润,并更新最大利润。
不能是先遍历计算历史的最低价格,因为卖出需要在买入之前进行。所以遍历的时候不断更新当前股票最小价格就行,右侧的最小价格,不会影响左侧股票卖出赚到的利润。

下面的解法,其实就是将dp进行状态压缩了,不需要维护一个完整的dp数组,只需要维护两个变量就行。

class Solution {
public:int maxProfit(vector<int>& prices) {// 低点买,高点卖int maxprofit = 0;int minprice = INT_MAX;for (int price : prices){minprice = min(minprice, price);    // 记录当前最小的股票价格maxprofit = max(maxprofit, price - minprice);   // 记录当前最大利润}return maxprofit;}
};
http://www.xdnf.cn/news/10452.html

相关文章:

  • 【优比】基于STM32的紧急求助定位导盲仪系统
  • python打卡训练营打卡记录day41
  • 26考研——文件管理_文件目录(4)
  • Java内存模型(JMM)与多线程编程实战
  • 【小米拥抱AI】小米开源 MiMo-7B-RL-0530
  • 湖北理元理律师事务所:用科学规划重塑债务人生
  • 什么是 TOML?
  • NHANES指标推荐:ALI
  • <4>, Qt窗口
  • mysql慢sql的实际处理方案之一
  • MySQL事务和索引原理
  • WIN32-内存管理
  • leetcode hot100刷题日记——32.杨辉三角
  • Leetcode 3231. 要删除的递增子序列的最小数量
  • Docker-搭建MySQL主从复制与双主双从
  • 解常微分方程组
  • 代码随想录算法训练营第60期第五十三天打卡
  • C57-断言函数assert
  • 【Dv3Admin】工具请求配置文件解析
  • 【PCI】PCI入门介绍(包含部分PCIe讲解)
  • [USACO1.5] 八皇后 Checker Challenge Java
  • 智慧物流园区整体解决方案
  • LeeCode 98. 验证二叉搜索树
  • C#数字金额转中文大写金额:代码解析
  • CppCon 2014 学习:Pragmatic Type Erasure
  • vue-09(使用自定义事件和作用域插槽构建可重用组件)
  • Hbase
  • 如何真正实现软件开发“快”起来:破除误区与落地实践
  • 通义灵码深度实战测评:从零构建智能家居控制中枢,体验AI编程新范式
  • 新版智慧景区信息化系统解决方案