力扣901.股票价格跨度

力扣901.股票价格跨度

  • 单调栈

    • 若当前价格 >= 栈顶元素 弹出栈顶元素
    • 找到最远的符合要求的
cpp 复制代码
  class StockSpanner {
      stack<pair<int,int>> st;
      int cur_day = -1;
  public:
      StockSpanner() {
          st.emplace(-1,INT_MAX);
      }
      
      int next(int price) {
          while(price >= st.top().second)
              st.pop();
          int ans = ++cur_day - st.top().first;
          st.emplace(cur_day,price);
          return ans;
      }
  };
相关推荐
InfiniSynapse几秒前
连上Snowflake就能取数:InfiniSynapse + Spider2-Snow实战企业数据分析
数据结构·图像处理·人工智能·算法·语言模型·数据挖掘·数据分析
wuyaolong00726 分钟前
Spring Boot 3.4 正式发布,结构化日志!
java·spring boot·后端
少许极端29 分钟前
算法奇妙屋(三十三)-DFS的记忆化搜索
算法·深度优先·记忆化搜索
hua8722233 分钟前
Golang 构建学习
java·开发语言·学习
Halo_tjn39 分钟前
Java 三个修饰符 相关知识点
java·开发语言
毕设源码-朱学姐40 分钟前
【开题答辩全过程】以 广东省非遗文化信息管理系统的设计与实现为例,包含答辩的问题和答案
java
WolfGang00732144 分钟前
代码随想录算法训练营 Day13 | 二叉树 part03
数据结构·算法·leetcode
进击的小头1 小时前
第11篇:频率响应绘制方法——伯德图(Bode Plot)
python·算法
2401_883035461 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
番茄去哪了1 小时前
Java基础面试题day01
java·开发语言·后端·javase·八股·面向对象编程