力扣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;
      }
  };
相关推荐
iAkuya7 分钟前
(leetcode)力扣100 18矩阵置零(哈希)
leetcode·矩阵·哈希算法
Wpa.wk11 分钟前
自动化测试(java) - PO模式了解
java·开发语言·python·测试工具·自动化·po模式
点云侠15 分钟前
粒子群优化算法求解三维变换矩阵的数学推导
线性代数·算法·矩阵
IT 行者23 分钟前
Spring Security 7.0 新特性详解
java·后端·spring
dragoooon3424 分钟前
[hot100 NO.31~36]
数据结构·算法·排序算法
白兰地空瓶24 分钟前
JavaScript 列表转树(List to Tree)详解:前端面试中如何从递归 O(n²) 优化到一次遍历 O(n)
javascript·算法·面试
艾醒26 分钟前
大模型原理剖析——从技术特性、底层架构到落地逻辑的全维度解析
算法
华仔啊29 分钟前
Java 的金额计算用 long 还是 BigDecimal?资深程序员这样选
java·后端
Coder_Boy_33 分钟前
业务导向型技术日志记录(2)
java·人工智能·驱动开发·微服务
Liangwei Lin38 分钟前
洛谷 B3637 最长上升子序列
算法