当前位置:网站首页>每日一题-单调栈
每日一题-单调栈
2022-08-05 05:17:00 【菜鸡程序媛】
目录
接雨水
- 时间:0728
- 题目
给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。

- 思路
- 本题通过单调栈的思路进行解题
- 首先,保持栈内单调递减的顺序,当出现后面的元素值超过栈顶元素的值时,就形成了一个“坑”,坑的体积就是左右两侧更矮的墙*两面墙的间距。
- 循环的结构要采用while,因为比如是20103,当计算完“103”这个坑的时候,还需要计算前面“213”这个坑,当出现更高墙的时候需要将之前的坑的面积都累加到体积中。
- 代码:
public int trap(int[] height) {
if(height == null || height.length == 0)
return 0;
Stack<Integer> stack = new Stack<>();
int sum = 0;
for(int i = 0; i < height.length; i ++){
// 注意这里是while循环
while(!stack.isEmpty() && (height[i] > height[stack.peek()])){
int k = stack.pop(); //柱子的底子
if(stack.isEmpty())
break;
int j = stack.peek(); //此时的左边界
sum += (Math.min(height[i], height[j]) - height[k]) * (i - j - 1);
}
stack.push(i);
}
return sum;
}边栏推荐
- leetCode刷题之第31题
- 《基于机器视觉的输电线路交叉点在线测量方法及技术方案》论文笔记
- 网管日记:故障网络交换机快速替换方法
- It turns out that the MAE proposed by He Yuming is still a kind of data enhancement
- [After a 12] No record for a whole week
- 吞吐?带宽?傻傻分不清楚
- SQL (2) - join window function view
- [Intensive reading of the paper] R-CNN's Bounding box regression problem is detailed
- Polygon计算每一个角的角度
- 深度学习系列(一)简介、线性回归与成本函数
猜你喜欢

2021电赛资源及经验总结
![[Database and SQL study notes] 10. (T-SQL language) functions, stored procedures, triggers](/img/b9/06b90160c962a25a3cc44731afb6dc.png)
[Database and SQL study notes] 10. (T-SQL language) functions, stored procedures, triggers

全尺度表示的上下文非局部对齐

1008 数组元素循环右移问题 (20 分)
![[Database and SQL study notes] 9. (T-SQL language) Define variables, advanced queries, process control (conditions, loops, etc.)](/img/7e/566bfa17c5b138d1f909185721c735.png)
[Database and SQL study notes] 9. (T-SQL language) Define variables, advanced queries, process control (conditions, loops, etc.)

【UiPath2022+C#】UiPath If条件语句

LeetCode刷题之第23题

MSRA proposes extreme masking model ExtreMA for learning instances and distributed visual representations

用GAN的方法来进行图片匹配!休斯顿大学提出用于文本图像匹配的对抗表示学习,消除模态差异!

You should write like this
随机推荐
六步搞定子网划分
最简单的防抖节流理解法
【论文阅读-表情捕捉】High-quality Real Time Facial Capture Based on Single Camera
CVPR 2022 | 70% memory savings, 2x faster training
读论文 - Unpaired Portrait Drawing Generation via Asymmetric Cycle Mapping
深度学习系列(一)简介、线性回归与成本函数
[Pytorch study notes] 10. How to quickly create your own Dataset dataset object (inherit the Dataset class and override the corresponding method)
【论文阅读-表情捕捉】ExpNet: Landmark-Free, Deep, 3D Facial Expressions
(C语言)动态内存管理
深度学习系列(二)优化器 (Optimization)
leetCode刷题之第31题
吞吐?带宽?傻傻分不清楚
Jupyter notebook选择不同的Anaconda环境作为内核运行
二、自动配置之底层注解
网络通信及相关函数介绍
LeetCode刷题之第86题
原型版本管理
关于使用QML的MediaPlayer实现视频和音频的播放时遇到的一些坑
A deep learning code base for Xiaobai, one line of code implements 30+ attention mechanisms.
亲身实感十多年的面试官面试的题目