LeetCode 739. 每日温度

解题思路

单调栈的经典题型。

我们需要找到temperaturesi的右边最近的小于temperaturesi的值,所以就想到了单调栈。

相关代码

复制代码
class Solution {
    public int[] dailyTemperatures(int[] temperatures) {
        Stack<Integer> stack = new Stack<>();
        int res[] = new int[temperatures.length];
        int n = temperatures.length;
        for(int i=n-1;i>=0;i--){
            //进行筛选
            while(stack.isEmpty()==false&&temperatures[i]>=temperatures[stack.peek()]) stack.pop();
            if(stack.isEmpty()==true) res[i]=0;
            else res[i]=Math.abs(stack.peek()-i);
            stack.push(i);
        }
        return res;
    }
}
相关推荐
一只齐刘海的猫3 分钟前
【Leetcode】三数之和
数据结构·算法·leetcode
lightqjx3 分钟前
【算法】数据结构_扩展域并查集
数据结构·算法·并查集·扩展域并查集
无忧.芙桃7 分钟前
debug实例与分析(一)
开发语言·c++·算法
sheeta199813 分钟前
LeetCode 补拙笔记 日期:2026.06.07 题目:49. 字母异位词分组
笔记·算法·leetcode
装不满的克莱因瓶22 分钟前
了解不同机器学习模型的分类
人工智能·python·算法·机器学习·ai·分类·数据挖掘
QiLinkOS23 分钟前
合肥气链科技有限公司本质总结
c++·科技·算法·gitee·开源
2501_9318037534 分钟前
线性筛(欧拉筛):从原理到应用
算法
ysu_031439 分钟前
leetcode数据结构与算法5~7:链表双指针与二级指针
数据结构·学习·算法·leetcode·链表
小欣加油42 分钟前
leetcode542 01矩阵
数据结构·c++·算法·leetcode·矩阵·bfs
wu_ye_m1 小时前
学习c语言第34天 用函数每次输出+1,链式访问,int和void
c语言·学习·算法