力扣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;
      }
  };
相关推荐
大模型码小白9 小时前
Milvus 架构设计:从向量索引到分布式检索,AI 原生存储引擎的内部机制
java·大数据·人工智能·分布式·深度学习·milvus
稚南城才子,乌衣巷风流9 小时前
链表(Linked List):数据结构详解与实战应用
java
NWU_LK10 小时前
【WebFlux】第二篇 —— Project Reactor 核心数据类型
java
三84410 小时前
笔记:在同一个物理服务器上通过nginx的虚拟主机生成多个不同的web站点
java·前端·nginx
caimouse10 小时前
mm学习笔记_04:VAD树算法与地址空间分配
笔记·学习·算法·reactos
2501_9327502610 小时前
Android 数据持久化解析
android·java
abcy07121310 小时前
flink窗口类型
开发语言·python·算法
NWU_LK11 小时前
【WebFlux】第三篇 —— 常用操作符与数据流转换
java
Mr__Miss19 小时前
Java泛型完全指南:从入门到精通
java·开发语言·python
jinyishu_20 小时前
模拟实现 C++ 栈和队列——从适配器模式看懂 STL 容器之美
java·c++·适配器模式