力扣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;
      }
  };
相关推荐
会编程的土豆5 小时前
消息队列(MQ)入门笔记
java·笔记·spring
水木流年追梦5 小时前
大模型入门-DPO 直接偏好优化
人工智能·学习·算法·机器学习·正则表达式
专注VB编程开发20年6 小时前
python运行提速方案全解
java·linux·服务器
涤生大数据6 小时前
大数据面试高频题:row_number() 数据倾斜到底怎么解决?
java·大数据·面试
weixin_446729166 小时前
注解和反射
java·开发语言
alphaTao6 小时前
LeetCode 每日一题 2026/5/18-2026/5/24
python·leetcode
摇滚侠6 小时前
HashMap 源码解析 底层原理 面试如何回答
java·面试·职场和发展
凯瑟琳.奥古斯特6 小时前
常见加密算法及应用
java·开发语言·网络·网络协议·职场和发展
devilnumber6 小时前
java的lambda妙用举例
java·lambda
invicinble6 小时前
springboot提供的机制大全
java·spring boot·后端