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

LeetCode热题100--739. 每日温度--中等

题目

给定一个整数数组 temperatures ,表示每天的温度,返回一个数组 answer ,其中 answer[i] 是指对于第 i 天,下一个更高温度出现在几天后。如果气温在这之后都不会升高,请在该位置用 0 来代替。

示例 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]

示例 3:
输入: temperatures = [30,60,90]
输出: [1,1,0]

题解

classSolution{publicint[]dailyTemperatures(int[]T){intlength=T.length;int[]result=newint[length];//从右向左遍历for(inti=length-2;i>=0;i--){// j+= result[j]是利用已经有的结果进行跳跃for(intj=i+1;j<length;j+=result[j]){if(T[j]>T[i]){result[i]=j-i;break;}elseif(result[j]==0){//遇到0表示后面不会有更大的值,那当然当前值就应该也为0result[i]=0;break;}}}returnresult;}}

解析

出自:每日温度 - Java

publicint[]dailyTemperatures(int[]T){...}//定义一个方法,它接受一个整型数组并返回另一个整型数组。intlength=T.length;int[]result=newint[length];//初始化我们的"result"数组,并给它分配输入数据的大小和维度。for(inti=length-2;i>=0;i--){...}//我们反着读取我们的"T"数组,从最后一个元素到第一个。这是为了能够利用我们已经做过的计算来跳过我们不需要再次做的计算(例如在同一迭代中找出更大的值的检查和赋值)。for(intj=i+1;j<length;j+=result[j]){...}//这个循环试图找到T中的下一个较大的气温,它使用了我们已经计算过的值来跳过某些索引。我们每次增加`result[j]`是基于前面的结果(可能对同一迭代来说可能是零)if(T[j]>T[i]){...}//如果当前的'j'索引上的值大于我们的'i'索引,我们计算出间隔并将其赋给我们的result数组中的'i'索引。elseif(result[j]==0){...}//否则如果在接下来的索引上找不到更大的值(前面的循环已经处理了这个情况),我们认为该天的温度"没有等待更多的天数".returnresult;//这行代码完成整个函数。它将我们的结果数组作为输出返回给调用者。
http://www.zskr.cn/news/83993.html

相关文章:

  • 【算法基础篇】(三十一)动态规划之基础背包问题:从 01背包到完全背包,带你吃透背包问题的核心逻辑
  • 2026年大模型(LLM)学习终极指南:从零基础到精通,一篇涵盖全部核心技术与实战!
  • 接口测试:Charles 抓包工具证书配置
  • 6.类作用域
  • 内存分配效率提升50%?.NET 9这3项优化你不可不知
  • 干翻Dubbo系列第二篇:Dubbo3相对其他版本的升级
  • 视频下载工具高效使用指南:轻松掌握DownKyi核心技巧
  • 【最优潮流】基于半定规划(SDP)模型求解最优潮流研究(Matlab代码实现)
  • iOS微信红包助手终极指南:2025快速配置教程
  • 720P I2V模型应用指南:性能优化与新手操作全解析
  • 零基础学渗透测试?7 款最佳工具详解,从入门到精通,一篇收藏够用
  • 2023年IEEE TIV,GA-LNS算法+直升机救援调度,深度解析+性能实测
  • 【收藏必备】手摸手带你搞定RAG:大模型检索增强生成实战教程
  • 日期题模版(made by yyf)
  • 2025中国电缆一线品牌推荐,中国电缆十大品牌推荐:知名品牌12月TOP榜单 - 品牌2026
  • K8S系列之6.1:自定义扩展(CRD 与 Operator 设计模式)
  • 基于密集型复杂城市场景下求解无人机三维路径规划的Q-learning 算法研究(Matlab代码实现)
  • Day25
  • Day 36 MLP神经网络的训练
  • 中国台湾阳明交大团队让AI帮你实现真正的冻结时光
  • 工作生活没有节奏感怎么办?
  • 深入剖析高并发场景下ZooKeeper服务端Watcher实现原理
  • 量子计算开发者必看(VSCode性能调优实战手册)
  • TinyMCE5支持Latex公式转图片资源导入
  • 实习面试题-Go 性能优化面试题
  • 搞懂“元数据”:给数据办一张“身份证”
  • 04_C 语言进阶之避坑指南:多重 if-else 及多重条件混乱 —— 让逻辑不再 “绕迷宫”
  • [powershell 入门]第9天:PowerShell 安全、代码签名与企业部署 作业及深度解析
  • 【每天学习一点算法 2025/12/11】合并两个有序链表
  • 2025 最新货代 / 货运代理服务商 TOP5 评测!深度覆盖欧美加专线,全链路方案 + 全球网络权威榜单发布,赋能跨境电商与传统外贸高效出海 - 全局中转站