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

相关推荐
surtr18 小时前
常见排序模板(冒泡排序,希尔排序,堆排序,归并排序,快速排序)
数据结构·算法·贪心算法·排序算法
WX-bisheyuange8 小时前
基于Spring Boot的社团管理系统的设计与实现
前端·javascript·vue.js·毕业设计
fengfuyao9858 小时前
经典MUSIC算法程序以及测角精度与阵元间距、阵元数、信噪比、快拍数等的关系
算法
橙某人8 小时前
LogicFlow 插件魔改实录:手把手教你重写动态分组(DynamicGroup)🛠️
前端·javascript·vue.js
十八岁讨厌编程9 小时前
【算法训练营 · 补充】LeetCode Hot100(下)
算法·leetcode·职场和发展
2501_944446009 小时前
Flutter&OpenHarmony状态管理方案详解
开发语言·javascript·flutter
一路往蓝-Anbo9 小时前
C语言从句柄到对象 (三) —— 抛弃 Malloc:静态对象池与索引句柄的终极形态
c语言·开发语言·数据结构·stm32·单片机·算法
T_Donna9 小时前
【问题解决】react native: cli.init is not a function
javascript·react native·react.js
qx099 小时前
html中使用vue3+elementplus
javascript·vue.js·html
bjzhang759 小时前
使用 HTML + JavaScript 实现滑动验证码
前端·javascript·html