LeetCode 739. 每日温度

OJ链接: 739. 每日温度

示例代码:

复制代码
class Solution {
    public int[] dailyTemperatures(int[] temperatures) {
            int length =  temperatures.length;
    //数组存储下标记录
            int[] ans = new int[length];
            Stack<Integer> stack = new Stack<>();

            for(int i =0 ; i<length ;i++){
    //遍历每个温度
                int temp = temperatures[i]; 
           //当栈不为空 且 当前温度大于栈顶温度
                while( !stack.empty() && temp > temperatures[stack.peek()]){
    //出栈 ,并记录下标
                   int perv = stack.pop();
                    ans[perv] = i - perv;
                }
                stack.push(i);
            }
            return ans;
    }
}
相关推荐
2501_916766541 分钟前
【Java】static关键字与类的加载顺序
java·开发语言
Wang201220134 分钟前
LSTM和Transformer对比
人工智能·算法·架构
9号达人5 分钟前
支付配置时好时坏?异步方法里的对象引用坑
java·后端·面试
KingRumn9 分钟前
Linux进程间通信之D-Bus
linux·算法
fufu031111 分钟前
Linux环境下的C语言编程(四十九)
linux·c语言·算法
资生算法程序员_畅想家_剑魔14 分钟前
Java常见技术分享-14-多线程安全-锁机制-常见的锁以及底层实现-synchronized
java·开发语言
YGGP18 分钟前
【Golang】LeetCode198. 打家劫舍
算法·leetcode
啊阿狸不会拉杆20 分钟前
《数字图像处理》实验6-图像分割方法
图像处理·人工智能·算法·计算机视觉·数字图像处理
YGGP21 分钟前
【Golang】LeetCode 152. 乘积最大子数组
算法·leetcode
JoStudio22 分钟前
白帽系列01: 抓包
java·网络安全