【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.

相关推荐
萌>__<新3 分钟前
力扣打卡每日一题——缺失的第一个正数
数据结构·算法·leetcode
DuHz7 分钟前
车对车对向交汇场景的毫米波路径损耗建模论文精读
论文阅读·算法·汽车·信息与通信·信号处理
lxh011319 分钟前
二叉树中的最大路径和
前端·算法·js
萌>__<新21 分钟前
力扣打卡每日一题————零钱兑换
算法·leetcode·职场和发展
重生之后端学习21 分钟前
238. 除自身以外数组的乘积
java·数据结构·算法·leetcode·职场和发展·哈希算法
yaoxin52112333 分钟前
269. Java Stream API - Map-Filter-Reduce算法模型
java·python·算法
CC码码1 小时前
前端字符串排序搜索可以更加细化了
前端·javascript·面试
Crystal3281 小时前
冒泡排序 bubble sort
前端·javascript·面试
Learner__Q1 小时前
每天五分钟:动态规划-LeetCode高频题_day2
算法·leetcode·动态规划
一韦以航.1 小时前
C【指针】详解(上)
c语言·数据结构·c++·算法