当前位置: 首页 > news >正文

栈:每日温度

题目描述:给定一个每天温度数组,返回每天温度距离下一个高温在几天后。

示例 1:

输入: temperatures = [73,74,75,71,69,72,76,73]输出: [1,1,4,2,1,1,0,0]

示例 2:

输入: temperatures = [30,40,50,60]
输出: [1,1,1,0]

题解1:暴力解法

class Solution {public int[] dailyTemperatures(int[] temperatures) {// 方法一:暴力解法int[] res = new int[temperatures.length];for (int i = 0; i < temperatures.length; i++) {for (int j = i + 1; j < temperatures.length; j++) {if (temperatures[j] > temperatures[i]) {res[i] = j - i;break;}}}return res;}
}

题解2:单调栈

class Solution {public int[] dailyTemperatures(int[] temperatures) {// 方法二:单调栈(单调不增的栈) // 栈中维护【待找到下一个最高温】的索引Deque<Integer> stack = new ArrayDeque<>();int[] res = new int[temperatures.length];for (int i = 0; i < temperatures.length; i++) {// 栈不为空时,持续(循环)对比当前温度是不是栈顶的下一个最高温while (!stack.isEmpty() && temperatures[i] > temperatures[stack.peek()]) {int index = stack.pop(); // 进到循环,说明当前温度是栈顶的下一个最高温 res[index] = i - index;  // 记录栈顶温度i-index天是下一个最高温}stack.push(i);//栈为空 或者 当前温度小于栈顶温度 =》说明下一个更高温还没出现}return res;}
}

练习地址:https://leetcode.cn/problems/daily-temperatures/?envType=study-plan-v2&envId=top-100-liked

http://www.dtcms.com/a/445601.html

相关文章:

  • 从普通用户到AI专家:掌握“专家指南模板”,获取可复现、深度且精确的AI专业反馈
  • Photoshop调色
  • Google Jules Tools —— 开发者的新助手
  • 做方案的网站同城58找房子租房信息
  • 【LeetCode hot100|Week5】链表2
  • 刘家窑网站建设公司附近哪有学编程的地方
  • MP偏振相机在工业视觉检测中的应用
  • 安全初级(二)HTTP
  • 数组算法精讲:从入门到实战
  • 对文件的输入和输出
  • CSS3 过渡
  • 手机网站代码asp做网站策划书
  • macOS sequoia 15.7.1 源码安装node14,并加入nvm管理教程
  • LabVIEW利用DataSocket读取OPC 服务器数据
  • 第十章:外观模式 - 复杂系统的简化大师
  • 【数据结构】顺序栈的基本操作
  • 哈尔滨网站开发企业网站一直维护意味着什么
  • 第4集:配置管理的艺术:环境变量、多环境配置与安全实践
  • soular入门到实战(2) - 如何统一管理TikLab帐号体系
  • C语言进阶知识--指针(3)
  • M-LLM Based Video Frame Selection for Efficient Video Understanding论文阅读
  • 福州建设高端网站wordpress中控制图片标签
  • Prometheus 05-01: 告警规则与Alertmanager配置
  • 【Linux】Mysql的基本文件组成和配置
  • 简单易用!NAS+Leantime,开源轻量级项目管理,高效协作一键开启
  • 大数据毕业设计选题推荐-基于大数据的全球用水量数据可视化分析系统-大数据-Spark-Hadoop-Bigdata
  • NLP:迁移学习关于领域自适应的基础讲解
  • 在运行中的 Kafka 集群渐进式启用安全零停机实战手册(KRaft/Broker 通用)
  • 网站手机版制作白嫖永久服务器
  • 用一个 Bash CLI 管理多款 AI 开发工具:jt-code-cli 实战与原理解析