力扣739.每日温度

力扣739.每日温度

  • 单调栈

    • 从右到左做
    • 栈中存下标
cpp 复制代码
  class Solution {
  public:
      vector<int> dailyTemperatures(vector<int>& temperatures) {
          int n = temperatures.size();
          vector<int> ans(n);
          stack<int> st;
          for(int i=n-1;i>=0;i--)
          {
              int t = temperatures[i];
              //说明他不会是任何数的右边界
              while(!st.empty() && t >= temperatures[st.top()])
                  st.pop();
              if(!st.empty())
                  ans[i] = st.top() - i;
              st.push(i);
          }
          return ans;
      }
  };
相关推荐
计算机安禾13 小时前
【C语言程序设计】第39篇:预处理器与宏定义
c语言·开发语言·c++·vscode·算法·visual studio code·visual studio
参.商.13 小时前
【Day43】49. 字母异位词分组
leetcode·golang
m0_5698814714 小时前
C++中的装饰器模式变体
开发语言·c++·算法
笒鬼鬼14 小时前
【API接口】最新可用红果短剧接口
算法·api·笒鬼鬼·红果短剧·接口源码
weixin_4219226914 小时前
C++与边缘计算
开发语言·c++·算法
2401_8319207414 小时前
C++编译期数组操作
开发语言·c++·算法
殷紫川14 小时前
秒杀系统高并发核心优化与落地全指南
算法·架构
野犬寒鸦14 小时前
JVM垃圾回收机制面试常问问题及详解
java·服务器·开发语言·jvm·后端·算法·面试
风酥糖14 小时前
Godot游戏练习01-第16节-游戏中的状态机
算法·游戏·godot
参.商.14 小时前
【Day45】647. 回文子串 5. 最长回文子串
leetcode·golang