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

相关推荐
muls15 分钟前
java面试宝典
java·linux·服务器·网络·算法·操作系统
斯班奇的好朋友阿法法9 分钟前
ollama离线导入大模型
服务器·前端·javascript
kyriewen23 分钟前
MutationObserver:DOM界的“卧底”,暗中观察每个风吹草动
前端·javascript·面试
TON_G-T37 分钟前
100行实现Mini React
前端·javascript·react.js
多行不易37 分钟前
JavaScript与Sonic前端交互:构建可视化数字人生成界面
javascript·数字人·viewui·sonic
BieberChen42 分钟前
匈牙利匹配算法 (Hungarian Algorithm) 详解
算法
1314lay_10071 小时前
Element Plus左侧侧边栏按照屏幕宽度来确定显示和隐藏,如果太小的话,侧边栏消失,菜单会变成一个小按钮,点击按钮以模态框弹出
javascript·vue.js·elementui
春栀怡铃声1 小时前
常考排序的梳理
数据结构·算法·排序算法
第二只羽毛1 小时前
第六章 图
大数据·数据结构·算法·深度优先·图论·广度优先·宽度优先
看客随心1 小时前
vue + elementPlus大屏项目使用autofit做适配及注意点
前端·javascript·vue.js