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

算法练习题06:leetcode793每日温度

单调栈解法 

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

 不管咋样反正栈为空就先入栈,然后栈中存的是数组中数的索引,遍历这个数组,如果下一个数字比栈顶索引在数组中的值小,那么继续push压入栈,反之,下一个数字比栈顶索引在数组中的值大,那么就达成我们的目的了,找到比栈顶大的数了,那么pop弹出栈顶,i与弹出的那个索引做差值,就是弹出元素索引处的目标值,就是我们要的。画图看的更清楚。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 04:布局规划
  • 一个php快速项目搭建框架源码,带一键CURD等功能
  • DRF——serializer中获取嵌套评论
  • 力扣135-分发糖果(java详细题解)
  • 《黑神话:悟空》:30%抽成真相
  • 使用ffmpeg+node-media-server实现从rtsp服务器拉流再推送至rtmp服务器,实现http+flv进行web播放
  • 线性查找表的应用:用户登录注册程序
  • 分页查询--条件查询
  • 可以根据手机的折叠状态改变播放音效:nova Flip 的妙趣音效
  • iOS 收集打印日志
  • 进程程序替换
  • 亚马逊云(AWS)技术深度解析及代码使用案例
  • 华为od全面介绍!!!
  • Redis/ElaticSearch/kafka入门
  • 每日OJ_牛客_mkdir(排序+模拟)
  • JavaScript 如何正确处理 Unicode 编码问题!
  • C# 免费离线人脸识别 2.0 Demo
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • vue的全局变量和全局拦截请求器
  • webpack入门学习手记(二)
  • 分布式事物理论与实践
  • 技术:超级实用的电脑小技巧
  • 聊聊flink的TableFactory
  • 我的业余项目总结
  • 一个项目push到多个远程Git仓库
  • 在electron中实现跨域请求,无需更改服务器端设置
  • 正则表达式小结
  • 说说我为什么看好Spring Cloud Alibaba
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (33)STM32——485实验笔记
  • (52)只出现一次的数字III
  • (八)Docker网络跨主机通讯vxlan和vlan
  • (动态规划)5. 最长回文子串 java解决
  • (入门自用)--C++--抽象类--多态原理--虚表--1020
  • (十)T检验-第一部分
  • (转载)Linux网络编程入门
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃
  • .NET 使用 JustAssembly 比较两个不同版本程序集的 API 变化
  • .NET/C# 编译期能确定的字符串会在字符串暂存池中不会被 GC 垃圾回收掉
  • .Net中的集合
  • /*在DataTable中更新、删除数据*/
  • @FeignClient 调用另一个服务的test环境,实际上却调用了另一个环境testone的接口,这其中牵扯到k8s容器外容器内的问题,注册到eureka上的是容器外的旧版本...
  • @KafkaListener注解详解(一)| 常用参数详解
  • [Angularjs]asp.net mvc+angularjs+web api单页应用
  • [C/C++随笔] char与unsigned char区别
  • [C++初阶]list的模拟实现
  • [CareerCup] 12.3 Test Move Method in a Chess Game 测试象棋游戏中的移动方法
  • [ComfyUI进阶教程] animatediff视频提示词书写要点
  • [corCTF 2022] CoRJail: From Null Byte Overflow To Docker Escape
  • [CSS]浮动
  • [I2C]I2C通信协议详解(一) --- 什么是I2C