【LeetCode每日一题】单调栈 901股票价格跨度

901. 股票价格跨度思路

设计一个算法收集某些股票的每日报价,并返回该股票当日价格的 跨度

当日股票价格的 跨度 被定义为股票价格小于或等于今天价格的最大连续日数(从今天开始往回数,包括今天)。

  • 例如,如果未来 7 天股票的价格是 [100,80,60,70,60,75,85],那么股票跨度将是 [1,1,1,2,1,4,6]

实现 StockSpanner 类:

  • StockSpanner() 初始化类对象。
  • int next(int price) 给出今天的股价 price ,返回该股票当日价格的 跨度

从数组的左边找出等于或小于今天的股票的连续个数。

stack = [] 100 入栈, 80 ,80<100 ? 100 弹出。80 入栈,return stack.length

60 60<80? 80弹出,60入栈,return 1

70 70<60 ? No ⇒ 70,70入栈,return2,

60 60<70 ? yes while stack>0,70出栈,60入栈,return 1.

相关推荐
澈20744 分钟前
C++并查集:高效解决连通性问题
java·c++·算法
旖-旎2 小时前
深搜练习(单词搜索)(12)
c++·算法·深度优先·力扣
企客宝CRM3 小时前
2026年中小企业CRM选型指南:企客宝CRM处于什么位置?
android·算法·企业微信·rxjava·crm
橙淮3 小时前
二叉树核心概念与Java实现详解
数据结构·算法
米罗篮4 小时前
DSU并查集 & 拓展欧几里得-逆元
c++·经验分享·笔记·算法·青少年编程
橙淮4 小时前
双指针法:高效算法解题的利器
算法
你很易烊千玺4 小时前
日常练习-数组 字符串常用的场景
前端·javascript·字符串·数组
初心未改HD4 小时前
深度学习之MLP与反向传播算法详解
人工智能·深度学习·算法
刀法如飞4 小时前
【Go 字符串查找的 20 种实现方式,用不同思路解决问题】
人工智能·算法·go