力扣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;
      }
  };
相关推荐
信奥胡老师2 分钟前
B3930 [GESP202312 五级] 烹饪问题
开发语言·数据结构·c++·学习·算法
架构源启6 分钟前
Spring AI完整学习路线:从Java开发到AI Agent的进阶之路(附15篇实战教程)
java·人工智能·spring
SPC的存折8 分钟前
20、K8S-Pod驱逐
java·docker·kubernetes
JAVA学习通9 分钟前
安脉盛 软件后端开发实习面经
java·开发语言
paeamecium16 分钟前
【PAT甲级真题】- Shortest Distance (20)
数据结构·c++·算法·pat考试·pat
aisifang0020 分钟前
GPT-Image2去偏见技术新突破
人工智能·算法·机器学习
Halo_tjn21 分钟前
Java IO流文件操作
java·开发语言
吴可可12323 分钟前
点在线上判定与多段线分割
算法·c#
折哥的程序人生 · 物流技术专研25 分钟前
《Java 100 天进阶之路》第23篇:缓冲区数据结构 ByteBuffer
java·开发语言·数据结构·后端·面试·求职招聘
REDcker30 分钟前
C++循环与编译器优化详解 别名不变量向量化与GCC Clang验证及perf实践
java·jvm·c++·c·clang·gcc