力扣:739. 每日温度

739. 每日温度

典型的单调栈问题,从右边遍历枚举维护单调栈即可。

答案存到数组ant中,

当前位置温度比栈顶大就栈顶--,退出循环再栈顶加入当前温度。

cpp 复制代码
class Solution {
public:
    vector<int> dailyTemperatures(vector<int>& temperatures) {
        
       const int N=temperatures.size();
        int stk[N+2];int tt=0;
        vector<int> ant(N);
        for(int i=N-1;i>=0;i--)
        {
            while(tt && temperatures[i]>=temperatures[stk[tt]])tt--;
            stk[++tt]=i;
            if(tt>1) ant[i]=stk[tt-1]-i;
            
        }
        return ant;
    }
};
相关推荐
神仙别闹5 分钟前
基于MFC实现的赛车游戏
c++·游戏·mfc
小c君tt12 分钟前
MFC中 error C2440错误分析及解决方法
c++·mfc
测试界的酸菜鱼12 分钟前
C# NUnit 框架:高效使用指南
开发语言·c#·log4j
GDAL12 分钟前
lua入门教程 :模块和包
开发语言·junit·lua
李老头探索14 分钟前
Java面试之Java中实现多线程有几种方法
java·开发语言·面试
小沈熬夜秃头中୧⍤⃝14 分钟前
【贪心算法】No.1---贪心算法(1)
算法·贪心算法
CSXB9915 分钟前
三十四、Python基础语法(文件操作-上)
开发语言·python·功能测试·测试工具
web Rookie35 分钟前
JS类型检测大全:从零基础到高级应用
开发语言·前端·javascript
很楠不爱1 小时前
Qt——窗口
开发语言·qt
yi碗汤园1 小时前
【一文了解】C#基础-集合
开发语言·前端·unity·c#