题目描述:


通俗一点就是,从当前开始,往后看,看到升温的那一天目前需要等多久~

思路:

单调栈解法:参考下一个更大元素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.每日温度:单调栈解法相关推荐

  1. leetcode 739. 每日温度 单调栈解法和暴力法及其优化 c代码

    如题: 根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高, 请在该位置用 0 来代替.例如,给定一个列表 temperature ...

  2. 力扣【下一个更大元素】leetcode-503.下一个更大元素 Ⅱ:单调栈解法+循环数组解法

    题目: 思路与解法: 1.如果是暴力法,只需要遍历就可以了,但是那样的话时间复杂度就是O(N^2); 2.可以把这几个数字,抽象成为高度不一样的柱子: 3.寻找的过程,就是从当前柱子去看,被后面的哪一 ...

  3. LeetCode 739. 每日温度(单调栈)

    1. 题目 根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高,请在该位置用 0 来代替. 例如,给定一个列表 temperatu ...

  4. leetcode - 739. 每日温度

    根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高,请在该位置用 0 来代替. 例如,给定一个列表temperatures=[73 ...

  5. 184、【栈与队列】leetcode ——739. 每日温度(C++版本)

    题目描述 参考文章:739. 每日温度 解题思路 (1)暴力法 每次遍历到一个数时,就再开辟一个变量找此数后面第一个大于它的数,找到则添加,没找到则返回0. class Solution {publi ...

  6. 2020-06-11 LeetCode 739 每日温度 C++

    题目:739. 每日温度  根据每日 气温 列表,请重新生成一个列表,对应位置的输出是需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高,请在该位置用 0 来代替.  例如,给定一个列表 t ...

  7. 使用单调栈解决接雨水问题——LeetCode 42 接雨水+单调栈说明

    题目内容 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水. 示例 1: 输入:height = [0,1,0,2,1,0,1,3,2,1,2,1] 输 ...

  8. leetcode 316. Remove Duplicate Letters | 316. 去除重复字母(单调栈解法)

    题目 https://leetcode.com/problems/remove-duplicate-letters 题解 关于什么是"字典序" 字典序,换成数字更好理解一点 a:1 ...

  9. Leetcode 739. 每日温度 (每日一题 20211014)

    请根据每日 气温 列表 temperatures ,请计算在每一天需要等几天才会有更高的温度.如果气温在这之后都不会升高,请在该位置用 0 来代替.示例 1:输入: temperatures = [7 ...

最新文章

  1. 自然语言处理在医学领域的应用
  2. js-innerHTML
  3. Terraform Module 可视化正式发布
  4. 01算法 java_蓝桥杯:基础练习 01字串【JAVA算法实现】
  5. 紫色大气Bootstrap网站模板
  6. 大数据发展火爆,云计算平台主打安全至上
  7. PHP技术亮点,我眼里的THINKPHP5新亮点(1)
  8. 编程调节Win7/Win8系统音量的一种方法
  9. win10上卸载ubuntu
  10. 列宽一字符等于多少厘米_Excel中行高多少等于1厘米?列宽多少等...
  11. 【论文泛读18】利用BERT进行端到端面向方面的情感分析
  12. UEBA架构设计之路3:复杂事件处理引擎
  13. 【动态规划】SSL_1322 清兵线
  14. 电解电容和钽电容的区别是什么
  15. CSS初级教程(颜色、注释、选择器)【第一天】
  16. linux操作系统未正常启动提示Entering emergency mode. Exit the shell to continue
  17. VC++调节笔记本屏幕亮度(附源码)
  18. 海天蚝油《挑战不可能》7岁神童”盲棋“对抗,展现惊人脑力
  19. SATA3.0中FIS的八种类型
  20. oracle-04045,8170导出(exp)数据报错ORA-04045错误

热门文章

  1. 微众WeCross 跨链平台(4)异构链互联协议HIP
  2. (chap8 确认访问用户身份的认证) SSL客户端认证
  3. (chap6 Http首部) 响应首部字段 ServerVaryWWW-Authenticate
  4. optee:kernel space调用user space进程时候的硬件行为
  5. 计算机基础18春在线作业1,东师-计算机应用基础18春在线作业1-1.docx
  6. linux route命令删除多余路由
  7. pwntools用docker实现,进行pwn题解答
  8. CmRegisterCallback监控注册表框架
  9. 1.13 实例:用户修改密码
  10. Python基于socket实现的多任务版TCP服务端