力扣: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;
    }
};
相关推荐
七夜zippoe8 分钟前
缓存三大劫攻防战:穿透、击穿、雪崩的Java实战防御体系(二)
java·开发语言·缓存
大飞pkz16 分钟前
【设计模式】题目小练1
开发语言·设计模式·c#·题目小练
FriendshipT24 分钟前
Nuitka 将 Python 脚本封装为 .pyd 或 .so 文件
开发语言·python
她说人狗殊途29 分钟前
动态代理1
开发语言·python
草丛中的蝈蝈36 分钟前
qt中给QListWidget添加上下文菜单(快捷菜单)
开发语言·qt
楼田莉子39 分钟前
C++动态规划算法:斐波那契数列模型
c++·学习·算法·动态规划
1373i1 小时前
【Python】通俗理解反向传播
深度学习·算法·机器学习
Madison-No71 小时前
【C++】日期类运算符重载实战
c++·算法
椰子今天很可爱1 小时前
线程分离和线程同步互斥
linux·c++
cici158741 小时前
基于K-SVD的稀疏编码去噪算法
算法