【Leetcode刷题篇】leetcode739 每日温度
请根据每日 气温 列表,重新生成一个列表。对应位置的输出为:要想观测到更高的气温,至少需要等待的天数。如果气温在这之后都不会升高,请在该位置用 0 来代替。
例如,给定一个列表 temperatures = [73, 74, 75, 71, 69, 72, 76, 73],你的输出应该是 [1, 1, 4, 2, 1, 1, 0, 0]。
提示:气温 列表长度的范围是 [1, 30000]。每个气温的值的均为华氏度,都是在 [30, 100] 范围内的整数。
解题思路:暴力解法
public int[] dailyTemperatures(int[] T) {int[] res = new int[T.length];for(int i=0;i<T.length-1;i++) {int comp = T[i];boolean flag = false;for(int j=i+1;j<T.length;j++) {// 找到更高气温 跳出循环if(T[j]>comp) {res[i] = (j-i);flag = true;break;}}// 没有找到则设为0if(!flag) {res[i] = 0;}}res[T.length-1] = 0;return res;}
解题思路2; 维持一个单调栈
// 单调栈public int[] dailyTemperatures_2(int[] T) {int[] res = new int[T.length];Deque<Integer> stack = new LinkedList<Integer>();for(int i=0;i<T.length;i++) {int temperature = T[i];while(!stack.isEmpty()&&temperature>T[stack.peek()]) {int preIndex = stack.pop();res[preIndex] = i - preIndex;}stack.push(i);}return res;}
【Leetcode刷题篇】leetcode739 每日温度相关推荐
- 【Leetcode刷题篇】leetcode141 环形链表II
给定一个链表,返回链表开始入环的第一个节点. 如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始). 如果 pos 是 - ...
- 【Leetcode刷题篇】leetcode75 颜色分类
给定一个包含红色.白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色.白色.蓝色顺序排列. 此题中,我们使用整数 0. 1 和 2 分别表示红色.白色和蓝色. ...
- 【Leetcode刷题篇】leetcode589 N叉树的前序遍历
题目:给定一个 N 叉树,返回其节点值的前序遍历. 例如,给定一个 3叉树 : public class Leetcode589 {class Node{public int val;public L ...
- php算法在线刷题,c,算法_每日一道算法:leetcode 刷题碰到的问题。,c,算法 - phpStudy...
每日一道算法:leetcode 刷题碰到的问题. 这是题目: Given an unsorted array nums, reorder it such that nums[0] < nums[ ...
- 小何同学的leetcode刷题笔记 基础篇(01)整数反转
小何同学的leetcode刷题笔记 基础篇(01)整数反转[07] *** [01]数学取余法*** 对数字进行数位操作时,常见的方法便是用取余的方法提取出各位数字,再进行操作 操作(1):对10取余 ...
- LeetCode刷题专栏第一篇--思维导图时间安排
昨天是元宵节,过完元宵节相当于这个年正式过完了.不知道大家有没有投入继续投入紧张的学习工作中.年前我想开一个Leetcode刷题专栏,于是发了一个投票想了解大家的需求征集意见.投票于2019年2月1日 ...
- Leetcode刷题日记:21-25题篇
Leetcode刷题日记:21-25题篇 简介 题目: 21. 合并两个有序链表 22. 括号生成 23. 合并K个升序链表 24. 两两交换链表中的节点 25. K 个一组翻转链表 注 简介 这个系 ...
- 每天Leetcode 刷题 初级算法篇-打乱数组
目录 Leetcode刷题 Leetcode刷题 /*** @program: mydemo* @description: 设计问题-打乱数组* @author: Mr.zeng* @create: ...
- C#LeetCode刷题-栈
栈篇 # 题名 刷题 通过率 难度 20 有效的括号 C#LeetCode刷题之#20-有效的括号(Valid Parentheses) 33.0% 简单 42 接雨水 35.6% 困难 71 简化路 ...
- C#LeetCode刷题-哈希表
哈希表篇 # 题名 刷题 通过率 难度 1 两数之和 C#LeetCode刷题之#1-两数之和(Two Sum) 42.8% 简单 3 无重复字符的最长子串 24.2% 中等 18 四数之和 ...
最新文章
- 到底IPv4有多少个地址
- 【guava】大数据量下的集合过滤—Bloom Filter
- php过滤句尾空格,php正则过滤各种标签,空格,换行符的实现方法
- 格式化js/html代码的好工具
- Android 蓝牙扫描
- php 什么函数获取ip,php函数获取在线ip与客户端ip
- iptables 防护基本 DDoS 配置
- NAT和代理服务器的调研
- 【软件需求工程】北理的恶龙们——软件需求规格说明
- 在mini2440上面搞定CC2500驱动
- 锁定Excel部分单元格不能编辑,可以这样操作
- 三角函数计算,Cordic 算法入门
- 第五章 编码传输中的码率控制
- Contrastive Loss 详解及用法
- projection theorem
- 星际争霸2中一些你不曾注意到的搞笑细节
- Redhat7.5升级openssh到8.2p1
- css变形-扭曲(skew())
- Google Chrome 源码下载
- ECCV 2022 | 用于对抗攻击的频域模型增强方法
热门文章
- matlab中计算dft变换,利用MATLAB实现号DFT的计算.doc
- 使用Python构造数据包
- 分析评估和定位声音质量
- ECCV 2020 目标检测论文大盘点(49篇论文)
- Linux高清壁纸软件,十个小众的 Linux 桌面软件
- linux查网卡物理地址,网卡MAC地址查询方法
- centos7开启网卡命令_Centos7启动网卡并查看IP地址的方法
- Android之Intent详解
- 【Docker学习笔记 七】深入理解Docker网络配置及微服务部署
- (转)清华博士王垠的退学申请——研究生,无论你想不想搞研究,都该读读这篇文章。