《LeetCode笔记5》:每日温度
题目:
根据每日 气温
列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数。如果之后都不会升高,请在该位置用 0
来代替。
例如,给定一个列表 temperatures = [73, 74, 75, 71, 69, 72, 76, 73]
,你的输出应该是 [1, 1, 4, 2, 1, 1, 0, 0]
。
提示:气温
列表长度的范围是 [1, 30000]
。每个气温的值的均为华氏度,都是在 [30, 100]
范围内的整数。
来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/daily-temperatures/
解法一:
将气温依次输入栈中,同时记录每个温度所对应的天数,输入前与栈中已有的元素所比较。
1.若栈顶的元素大于当前输入的元素则入栈;
2.反之,则出栈,并且其所对应天数为两个日期的差;继续比较栈的下一个元素,直到栈为空,或栈顶元素大于要输入温度。
class Solution:def dailyTemperatures(self, T: List[int]) -> List[int]:l = len(T)day = [0]*lT_stack = []s = []for i in range(l):if(i==0):T_stack.append(T[i])else:while(T_stack):a = T_stack.pop()if(a<T[i]):b = s.pop()day[b]= i-belse:T_stack.append(a)breakT_stack.append(T[i])s.append(i)return day
《LeetCode笔记5》:每日温度相关推荐
- leetcode.84 leetcode739. 每日温度(都是单调栈)
学习不息,转载不止. 后面有自己写的题解.别忘了. 单调栈学习建议以及练习(15:54 开始):「力扣」第 42.739.496.316.901.402.581 题. 这是一个非常典型的利用单调栈来解 ...
- leetcode 栈739. 每日温度
739. 每日温度 根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高的天数.如果之后都不会升高,请输入 0 来代替.例如,给定一个列表 temperatures ...
- Leetcode 739:每日温度(超详细的解法!!!)
根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高的天数.如果之后都不会升高,请输入 0 来代替. 例如,给定一个列表 temperatures = [73, 74 ...
- 【LeetCode】【HOT】739. 每日温度(栈)
[LeetCode][HOT]739. 每日温度 文章目录 [LeetCode][HOT]739. 每日温度 package hot;import java.util.ArrayDeque; impo ...
- 184、【栈与队列】leetcode ——739. 每日温度(C++版本)
题目描述 参考文章:739. 每日温度 解题思路 (1)暴力法 每次遍历到一个数时,就再开辟一个变量找此数后面第一个大于它的数,找到则添加,没找到则返回0. class Solution {publi ...
- 2020-06-11 LeetCode 739 每日温度 C++
题目:739. 每日温度 根据每日 气温 列表,请重新生成一个列表,对应位置的输出是需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高,请在该位置用 0 来代替. 例如,给定一个列表 t ...
- 20200331:每日温度(leetcode739)
每日温度 题目 思路与算法 代码实现 复杂度分析 题目 思路与算法 思路一:暴力法,本题首先最直观的想法就是,我们在新建结果数组,然后为了填每个位置的值,每次都去遍历一遍数组找到第一个比当前值大的数, ...
- 力扣739. 每日温度
739. 每日温度 - 力扣(LeetCode) (leetcode-cn.com) 暴力 class Solution {public int[] dailyTemperatures(int[] t ...
- LeetCode—笔记—51、N皇后——递归回溯,个人思路,简单易懂
LeetCode-笔记-51.N皇后--递归回溯,个人思路,简单易懂 51. N 皇后 n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击. 给你一个整数 ...
- python 每日温度
| 每日温度 请根据每日 气温 列表 temperatures ,请计算在每一天需要等几天才会有更高的温度.如果气温在这之后都不会升高,请在该位置用 0 来代替.示例 1:输入: temperatur ...
最新文章
- 业余快速学习虚幻引擎教程
- 中国电子学会青少年编程能力等级测试图形化三级编程题:海底寻宝
- 关于雅可比迭代的Python实现
- 文件操作---with语句
- 复制内存时检测到可能的io争用条件_这篇高并发服务模型大科普,内部分享时被老大表扬了...
- 英语作业介绍一项发明计算机,介绍电脑的发明的英语作文
- 利用自定义的 ClassLoader 加密 Java Class 文件
- Stooge排序与Bogo排序算法
- Xavier上的第一个I2C驱动
- ORACLE数据库表空间查询
- C语言基础:for循环演示源码,字符循环和浮点数循环
- 大智慧服务器修改,任意版本大智慧,帮您免费实现全推行情
- 做webgl遇到的两个坑
- 设计模式~调停者(中介)模式-06
- 11.ARM架构的异常与中断
- 如何快速建搭建企业官方网站
- 嵌入式linux内核 浮点运算,ARM处理器Linux下浮点运算单元运用
- Mysql 1044错误代码:Access denied for user ''@'localhost'的解决方案
- 短视频剪辑制作教学:编辑短视频时需要注意的三个方面
- php对接阿里巴巴开放平台
热门文章
- [评委计分系统-双屏版]_唯一专业智能的PowerPoint评委打分展示系统闪亮登场!
- Python3网络爬虫开发实战(崔庆才)笔记——ProxyPool的代码问题:AttributeError: 'int' object has no attribute 'item及相关问题的处理
- IRwUDRYBMA0JAV5VUVddVVRUXFRU
- 一阶电路和二阶电路的时域分析(1)——“电路分析”
- 【安卓开发系列 -- APP 开源框架】IO 框架 OKIO
- 推荐:2014年中国政府投资项目工程建设代建单位管理中心工程项目管理信息化GOVPM解决方案
- 频率域滤波之带阻滤波器matlab代码
- HTML—写一个静态网页
- 解决eclipse的 Invalid project description. overlaps the location of another project: 问题
- BOM(操作浏览器相关内容)