Day-6
题目:https://leetcode-cn.com/problems/largest-rectangle-in-histogram/
同类型题目还有接雨水,类似的题目其实都是数组题,转化为栈来做。
解析:该题重点为找到矩形的左右边界,然后求面积
可以通过单调栈来得到当前柱子的左边界和右边界,注意当栈空时可以设置一个哨兵-1
通过左右节点计算矩形面积,求最大
时间复杂度为O(N),空间复杂度也为O(N);
优化方法如下:
![单调栈维护左右边界![](https://img-blog.csdnimg.cn/20200530091540209.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3NzQ3MzA1,size_16,color_FFFFFF,t_70)