力扣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;
      }
  };
相关推荐
爱编程的小吴1 小时前
【力扣练习题】167. 两数之和 II - 输入有序数组
算法·leetcode·职场和发展
sunfove1 小时前
打破物理与算法的边界:超分辨率成像原理深度解析
算法·成像·超分辨城乡
wearegogog1238 小时前
基于 MATLAB 的卡尔曼滤波器实现,用于消除噪声并估算信号
前端·算法·matlab
韩师学子--小倪8 小时前
fastjson与gson的toString差异
java·json
一只小小汤圆8 小时前
几何算法库
算法
Drawing stars8 小时前
JAVA后端 前端 大模型应用 学习路线
java·前端·学习
Evand J8 小时前
【2026课题推荐】DOA定位——MUSIC算法进行多传感器协同目标定位。附MATLAB例程运行结果
开发语言·算法·matlab
nbsaas-boot8 小时前
SQL Server 存储过程开发规范(公司内部模板)
java·服务器·数据库
行百里er9 小时前
用 ThreadLocal + Deque 打造一个“线程专属的调用栈” —— Spring Insight 的上下文管理术
java·后端·架构
leo__5209 小时前
基于MATLAB的交互式多模型跟踪算法(IMM)实现
人工智能·算法·matlab