news 2026/4/16 19:33:17

hot100-58每日温度

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
hot100-58每日温度

一、题目

给定一个整数数组,表示每天的温度,返回一个answer。

其中answer[i]对于第i天,下一个更高温度出现在几天后。如果气温在这之后都不会升高,该位置为0。

二、思路

1、维护一个递减的单调栈,栈中存放的是温度的下标,维护栈中对应的温度值从栈底到栈顶单调递减。

2、遍历每一天,如果当前温度高于栈顶日期温度,说明找到了更暖的一天。填answer数组:弹出栈顶,计算等待天数,当前天-栈顶天,重复此过程,直到栈空或当前温度小于等于栈顶温度。

将当前天下标入栈。(用栈记住“还在等待更暖天气”的日子,一旦遇到高温,就批量结算答案

三、代码

class Solution { public int[] dailyTemperatures(int[] temperatures) { int n = temperatures.length; int[] answer = new int[n]; Stack<Integer> stack = new Stack<>(); for(int i =0;i<n;i++){ while(!stack.isEmpty() && temperatures[i] > temperatures[stack.peek()]){ int prevIndex = stack.pop(); answer[prevIndex] = i - prevIndex; } stack.push(i); } return answer; } }

四、单调栈

单调栈是一种特殊的栈,其中元素(通常是数组的下标)按照其对应的值始终保持单调递增或单调递减的顺序。

用单调栈找下一个更大元素/更小元素。

在入栈前,不断弹出比当前元素小的栈顶,直到栈空或栈顶 ≥ 当前值,再入栈。这样就保证了栈中始终是递减的。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 12:28:57

ColorBrewer配色神器终极指南:三步搞定专业地图设计

还在为地图配色发愁吗&#xff1f;ColorBrewer配色神器让你轻松掌握专业地图设计技巧&#xff01;无论你是数据可视化新手还是经验丰富的地图设计师&#xff0c;这套工具都能为你提供科学精准的色彩搭配方案。今天&#xff0c;我将带你从零开始&#xff0c;三步掌握ColorBrewer…

作者头像 李华
网站建设 2026/4/15 18:31:51

如何修改.condarc文件自定义通道优先级顺序?

如何修改 .condarc 文件自定义通道优先级顺序&#xff1f; 在现代 AI 与数据科学项目中&#xff0c;一个常见的痛点是&#xff1a;为什么同样的 conda install 命令&#xff0c;在不同机器上安装出了不同版本的包&#xff1f; 更糟的是&#xff0c;有时明明指定了要装 PyTorch …

作者头像 李华
网站建设 2026/4/16 12:23:15

苹果触控板Windows驱动完全指南:5分钟实现原生级触控体验

苹果触控板Windows驱动完全指南&#xff1a;5分钟实现原生级触控体验 【免费下载链接】mac-precision-touchpad Windows Precision Touchpad Driver Implementation for Apple MacBook / Magic Trackpad 项目地址: https://gitcode.com/gh_mirrors/ma/mac-precision-touchpad…

作者头像 李华
网站建设 2026/4/16 18:13:23

Godot AI开发插件完整指南:三步开启智能游戏编程新时代

Godot AI开发插件完整指南&#xff1a;三步开启智能游戏编程新时代 【免费下载链接】Godot-MCP An MCP for Godot that lets you create and edit games in the Godot game engine with tools like Claude 项目地址: https://gitcode.com/gh_mirrors/god/Godot-MCP 还在…

作者头像 李华
网站建设 2026/4/16 18:15:24

OpenModScan完全指南:免费Modbus主站工具的终极使用教程

OpenModScan完全指南&#xff1a;免费Modbus主站工具的终极使用教程 【免费下载链接】OpenModScan Open ModScan is a Free Modbus Master (Client) Utility 项目地址: https://gitcode.com/gh_mirrors/op/OpenModScan OpenModScan是一款功能强大的开源Modbus主站工具&a…

作者头像 李华
网站建设 2026/4/16 16:27:14

Windows 10安卓子系统完整指南:无需升级的跨平台应用解决方案

Windows 10安卓子系统完整指南&#xff1a;无需升级的跨平台应用解决方案 【免费下载链接】WSA-Windows-10 This is a backport of Windows Subsystem for Android to Windows 10. 项目地址: https://gitcode.com/gh_mirrors/ws/WSA-Windows-10 还在为Windows 10无法运…

作者头像 李华