力扣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;
      }
  };
相关推荐
我不会起名字32216 小时前
万字总结Golang入门项目
数据结构·经验分享·算法·golang·项目实战·复盘
刘天远16 小时前
Agent最小权限实现:策略表、临时令牌与撤权回归
java·jvm·人工智能·sqlite
6Hzlia17 小时前
【Classic 150 刷题计划】 LeetCode 14. 最长公共前缀 | C++ 纵向扫描法与防越界细节
c++·算法·leetcode
QQ_216962909617 小时前
基于SpringBoot+Vue的小生活平台的设计与实现
java·数据库·vue.js·spring boot·spring·微信小程序·生活
前端兰博17 小时前
06-并发
java
程序员-珍17 小时前
Android studio 突然打不开
android·java
重生之小比特18 小时前
【Java SE】字符串 - String类
java·开发语言·intellij-idea
mldong1 天前
给若依加审批流,不用 Flowable
java·spring boot·架构
Wang's Blog1 天前
Java框架快速入门: Spring Security+OAuth2之数据库和实体类的RBAC改造
java·数据库·spring
Niuguangshuo1 天前
论文解读:CTC,端到端序列识别的开山之作
算法·语音识别