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;
    }
}
相关推荐
故事还在继续吗几秒前
DPDK 教程(三):多队列 + RSS + 多 worker 的最小转发 / Echo
算法·哈希算法·dpdk
Web极客码2 分钟前
Python Deque:构建实时滑动窗口与高性能缓存的“隐藏高手”
java·python·缓存
AI科技星2 分钟前
全域数学·体积与表面积通项定理【乖乖数学】
人工智能·算法·数学建模·数据挖掘·机器人
孬甭_3 分钟前
顺序表详解
c语言·数据结构
Yingjun Mo7 分钟前
1. 在线学习引言
学习·算法
风味蘑菇干8 分钟前
Map集合知识点
java
李日灐10 分钟前
< 12 > Linux进程:进程虚拟地址空间机制 —— 内存管理的美学
linux·运维·算法
Mr_pyx19 分钟前
LeetCode 226. 翻转二叉树(多种解法详解)
算法·深度优先
qeen8719 分钟前
【算法笔记】各种常见排序算法详细解析(上)
c语言·数据结构·c++·学习·算法·排序算法
绿蕉21 分钟前
自动驾驶技术的演进之路:从规则算法到端到端架构
算法·架构·自动驾驶