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;
    }
}
相关推荐
咖啡八杯7 小时前
GoF设计模式——策略模式
java·后端·spring·设计模式
To_OC10 小时前
LC 1 两数之和:面试第一道必考题,暴力解法直接被面试官 pass
javascript·算法·leetcode
用户1285261160214 小时前
我把祖传Java项目重构后,接口响应从3s砍到了200ms,只改了这几行代码
java
鱼鱼不愚与14 小时前
《原来如此 | 第01期:为什么导航软件能预测红绿灯倒计时?》
算法
Linsk15 小时前
组件 = 模板 + 业务逻辑
java·前端·vue.js
星沉远浦15 小时前
用Gemini高效解决Java代码报错难以定位的问题
java
用户2986985301419 小时前
Word 文档字符级格式化:Java 实现方案详解
java·后端
复杂网络19 小时前
论最小 Agent 计算机的形态
算法
笨鸟飞不快19 小时前
从单个服务到集群:一次完整的性能排查复盘
java·前端