【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 分钟前
面试八股文-JavaScript(第四天)
开发语言·javascript·ecmascript
wadesir12 分钟前
Java实现遗传算法(从零开始掌握智能优化算法)
java·开发语言·算法
喝拿铁写前端14 分钟前
AI 驱动前端开发覆盖的能力全景拆解
前端·javascript·人工智能
Jeremy爱编码16 分钟前
leetcode热题腐烂的橘子
算法·leetcode·职场和发展
不染尘.18 分钟前
应用层之WWW
服务器·javascript·css·网络·网络协议·计算机网络·html
KLW7519 分钟前
vue v-for 列表渲染指令注意
前端·javascript·vue.js
zhengxianyi51525 分钟前
vue 首屏加载优化
前端·javascript·vue.js·nginx·gzip·expires·静态文件缓存
H CHY27 分钟前
C++代码
c语言·开发语言·数据结构·c++·算法·青少年编程
alphaTao29 分钟前
LeetCode 每日一题 2025/12/22-2025/12/28
算法·leetcode
xiaolang_8616_wjl31 分钟前
c++题目_传桶(改编于atcoder(题目:Heavy Buckets))
数据结构·c++·算法