首页 > 其他分享 >739、每日温度

739、每日温度

时间:2024-02-04 20:44:07浏览次数:43  
标签:result index int 每日 temperatures 739 stack 温度

给定一个整数数组 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]

由于单调栈满足从栈底到栈顶元素对应的温度递减,因此每次有元素进栈时,会将温度更低的元素全部移除,并更新出栈元素对应的等待天数,这样可以确保等待天数一定是最小的。

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

标签:result,index,int,每日,temperatures,739,stack,温度
From: https://www.cnblogs.com/MarkLeeBYR/p/18006961

相关文章

  • 2024.2.4寒假每日总结26
    算法题:292.Nim游戏-力扣(LeetCode)LeetCodeNim游戏292.Nim游戏-力扣(LeetCode)题目描述你和你的朋友,两个人一起玩Nim游戏:桌子上有一堆石头。你们轮流进行自己的回合,你作为先手。每一回合,轮到的人拿掉1-3块石头。拿掉最后一块石头的人就是获胜者。......
  • 2.4寒假每日总结25
    误详情:使用IDEA直接连接数据库报错:Serverreturnsinvalidtimezone.Goto'Advanced'tabandset'serverTimezone'propertymanually.错误原因:MySQL驱动中默认时区是UTC,与本地时间有时差。解决方案:点开最右侧导航栏Advanced,找到serverTimezone,在value处填写GMT保存 ......
  • 2.3寒假每日总结25
    nginx平滑升级1,当前版本查看[root@localhostsbin]#./nginx-V2,解压新版本安装包tar-zxvfnginx-1.20.2.tar.gz3,进入新版安装包文件cdnginx-1.20.2/4,初始化(若是添加新模块,可在后面追加模块名称)./configure--prefix=/usr/local/nginx--conf-path=/usr/local/......
  • 2024.2.3寒假每日总结25
    算法:1690.石子游戏VII-力扣(LeetCode)使用的HBuilderX版本:3.98Git插件已安装:项目结构如下:右击项目目录,在git命令中-》检查已修改,可以发现还是能检索到修改过的文件:文件是有修改过的,但是在上图中没有任何的修改标识,这些文件也没有添加......
  • 每日导数49
    典型的一道求参问题已知\(f(x)=a(x+1)^2-4\lnx\)(1)若\(a=\dfrac{1}{2}\),求曲线\(f(x)\)在\(x=1\)处的切线方程(2)若对任意的\(x\in[1,e],f(x)<1\)恒成立,求实数\(a\)的取值范围(1)\(a=\dfrac{1}{2}\),\(f(x)=\dfrac{1}{2}(x+1)^2-4\lnx,f(1)=2\)\(f^{\prime}(x)=x+1-4\ln......
  • 2.2寒假每日总结24
    使用的HBuilderX版本:3.98Git插件已安装:项目结构如下:右击项目目录,在git命令中-》检查已修改,可以发现还是能检索到修改过的文件:文件是有修改过的,但是在上图中没有任何的修改标识,这些文件也没有添加到.gitignore配置中。二、问题解决......
  • 2024.2.2寒假每日总结24
    算法题:1686.石子游戏VI-力扣(LeetCode)最最简单的超级马里奥训练过程fromnes_py.wrappersimportJoypadSpaceimportgym_super_mario_brosfromgym_super_mario_bros.actionsimportSIMPLE_MOVEMENTimporttimefrommatplotlibimportpyplotaspltfromstable_basel......
  • 每日导数48
    隐零点与类偏移,第三问太难想不出来,不知道考哪里\(f(x)=x^2+\dfrac{1-\lnx}{x}-a\)有两个零点\(x_1,x_2\)且\(x_1<x_2\)(1)求\(a\)的取值范围(2)证\(x_1x_2<1\)(3)证\(x_2-x_1<\sqrt{a^2-4}<x_2^2-x_1^2\)解(1)\(x^2+\dfrac{1-\lnx}{x}-a=0\)即\(F(x)=x^3+1-\lnx-ax=0\......
  • 每日一道Java面试题:说一说Java中的异常
    写在开头任何一个程序都无法保证100%的正常运行,程序发生故障的场景,我们称之为:异常,在Java中对于异常的处理有一套完善的体系,今天我们就来一起学习一下。老样子,用一段简单的代码开始今天的学习。我:“小二,上代码!”JavaBuild君:“好嘞!几位爷,里面请~”【代码示例1】//Java中经......
  • 2.1寒假每日总结23
    最最简单的超级马里奥训练过程fromnes_py.wrappersimportJoypadSpaceimportgym_super_mario_brosfromgym_super_mario_bros.actionsimportSIMPLE_MOVEMENTimporttimefrommatplotlibimportpyplotaspltfromstable_baselines3importPPOenv=gym_super_mario......