力扣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;
      }
  };
相关推荐
zfoo-framework13 小时前
1.ansible安装 2.虚拟机克隆
java
码上解惑13 小时前
从 Dify 工作流说起:常用节点怎么选、怎样组合?
java·人工智能·ai·agent·dify·智能体·spring ai
稚南城才子,乌衣巷风流13 小时前
ST 表(Sparse Table)算法详解:原理、实现与应用
算法
hold?fish:palm13 小时前
9 找到字符串中所有字母异位词
c++·算法·leetcode
Sw1zzle14 小时前
算法入门(六):贪心算法 - 基础入门(Leetcode 121/455/860/376/738)
算法·leetcode·贪心算法
青山木14 小时前
Hot 100 --- 岛屿数量
java·数据结构·算法·leetcode·深度优先·广度优先
不会就选b14 小时前
算法日常・每日刷题--<归并排序>1
数据结构·算法
程序员-珍14 小时前
报错下载android sdk失败
android·java
糖果店的幽灵14 小时前
langgraph分支之 - 动态分支(Dynamic Branch)
java·前端·javascript·人工智能·langgraph