力扣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;
      }
  };
相关推荐
慧都小妮子13 分钟前
GcExcel 服务端 Excel 组件:无需安装 Office 的 Java/.NET 报表方案
java·.net·excel·gcexcel·服务端excel组件
卓怡学长14 分钟前
w236基于springboot应用型本科院校共享在线考试系统
java·spring boot·spring·intellij-idea
程序员清风22 分钟前
从 JVM 内存模型到 GC 调优:Java 服务性能优化实战
java·jvm·性能优化
麻瓜code26 分钟前
【LeetCode】相交链表:双指针法,一次遍历找到交点
算法·leetcode·链表
Joolun商城源码_Java33 分钟前
Java 商城技术栈怎么选:单体、微服务还是前后端分离多端?
java·开发语言·微服务
拒绝内耗。38 分钟前
一个请求进入 Java 应用后,怎么找到我们写的方法?
java·开发语言
夕除43 分钟前
redis--013
java·开发语言
zander2581 小时前
LeetCode 5. 最长回文子串
算法
码匠许师傅1 小时前
【设计模式精讲】28.访问者模式(Visitor)
java·设计模式·访问者模式
hanlin032 小时前
刷题笔记:力扣第84题-柱状图中最大的矩形
笔记·算法·leetcode