力扣【每日温度】leetcode-739.每日温度:单调栈解法
题目描述:
通俗一点就是,从当前开始,往后看,看到升温的那一天目前需要等多久~
思路:
单调栈解法:参考下一个更大元素leetcode 503题的思路以及解法
不同之处在于,题目要求返回的不是原来数组的值了 ,而是“距离”,所以需要调整一下,数组存放的应该是索引
class Solution {public:vector<int> dailyTemperatures(vector<int>& T) {vector<int> res(T.size());//存放的是索引stack<int> s;//使用单调栈for (int i = T.size() - 1; i >= 0; i --) {while(!s.empty() && T[s.top()] <= T[i] ) {s.pop();}res[i] = s.empty() ? 0 : (s.top() - i);//s.top() - i 就是距离了s.push(i);}return res;}
};
结果:
总结:单调栈解法的巧妙使用~
力扣【每日温度】leetcode-739.每日温度:单调栈解法相关推荐
- leetcode 739. 每日温度 单调栈解法和暴力法及其优化 c代码
如题: 根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高, 请在该位置用 0 来代替.例如,给定一个列表 temperature ...
- 力扣【下一个更大元素】leetcode-503.下一个更大元素 Ⅱ:单调栈解法+循环数组解法
题目: 思路与解法: 1.如果是暴力法,只需要遍历就可以了,但是那样的话时间复杂度就是O(N^2); 2.可以把这几个数字,抽象成为高度不一样的柱子: 3.寻找的过程,就是从当前柱子去看,被后面的哪一 ...
- LeetCode 739. 每日温度(单调栈)
1. 题目 根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高,请在该位置用 0 来代替. 例如,给定一个列表 temperatu ...
- leetcode - 739. 每日温度
根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高,请在该位置用 0 来代替. 例如,给定一个列表temperatures=[73 ...
- 184、【栈与队列】leetcode ——739. 每日温度(C++版本)
题目描述 参考文章:739. 每日温度 解题思路 (1)暴力法 每次遍历到一个数时,就再开辟一个变量找此数后面第一个大于它的数,找到则添加,没找到则返回0. class Solution {publi ...
- 2020-06-11 LeetCode 739 每日温度 C++
题目:739. 每日温度 根据每日 气温 列表,请重新生成一个列表,对应位置的输出是需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高,请在该位置用 0 来代替. 例如,给定一个列表 t ...
- 使用单调栈解决接雨水问题——LeetCode 42 接雨水+单调栈说明
题目内容 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水. 示例 1: 输入:height = [0,1,0,2,1,0,1,3,2,1,2,1] 输 ...
- leetcode 316. Remove Duplicate Letters | 316. 去除重复字母(单调栈解法)
题目 https://leetcode.com/problems/remove-duplicate-letters 题解 关于什么是"字典序" 字典序,换成数字更好理解一点 a:1 ...
- Leetcode 739. 每日温度 (每日一题 20211014)
请根据每日 气温 列表 temperatures ,请计算在每一天需要等几天才会有更高的温度.如果气温在这之后都不会升高,请在该位置用 0 来代替.示例 1:输入: temperatures = [7 ...
最新文章
- 自然语言处理在医学领域的应用
- js-innerHTML
- Terraform Module 可视化正式发布
- 01算法 java_蓝桥杯:基础练习 01字串【JAVA算法实现】
- 紫色大气Bootstrap网站模板
- 大数据发展火爆,云计算平台主打安全至上
- PHP技术亮点,我眼里的THINKPHP5新亮点(1)
- 编程调节Win7/Win8系统音量的一种方法
- win10上卸载ubuntu
- 列宽一字符等于多少厘米_Excel中行高多少等于1厘米?列宽多少等...
- 【论文泛读18】利用BERT进行端到端面向方面的情感分析
- UEBA架构设计之路3:复杂事件处理引擎
- 【动态规划】SSL_1322 清兵线
- 电解电容和钽电容的区别是什么
- CSS初级教程(颜色、注释、选择器)【第一天】
- linux操作系统未正常启动提示Entering emergency mode. Exit the shell to continue
- VC++调节笔记本屏幕亮度(附源码)
- 海天蚝油《挑战不可能》7岁神童”盲棋“对抗,展现惊人脑力
- SATA3.0中FIS的八种类型
- oracle-04045,8170导出(exp)数据报错ORA-04045错误
热门文章
- 微众WeCross 跨链平台(4)异构链互联协议HIP
- (chap8 确认访问用户身份的认证) SSL客户端认证
- (chap6 Http首部) 响应首部字段 ServerVaryWWW-Authenticate
- optee:kernel space调用user space进程时候的硬件行为
- 计算机基础18春在线作业1,东师-计算机应用基础18春在线作业1-1.docx
- linux route命令删除多余路由
- pwntools用docker实现,进行pwn题解答
- CmRegisterCallback监控注册表框架
- 1.13 实例:用户修改密码
- Python基于socket实现的多任务版TCP服务端