[LeetCode]84. Largest Rectangle in Histogram
来源:互联网 发布:下载荧光签名软件 编辑:程序博客网 时间:2024/06/05 12:44
https://leetcode.com/problems/largest-rectangle-in-histogram/
找到柱状图之中的最大矩形面积
找出以heights[i]为最小长度的矩形面积可得结果。这个矩形的面积为heights[i] * i位置左右两侧第一个小于heights[i]的位置差(不将晓宇height[i]的这两个左右位置记入宽中,因此为i - j - 1)。如何找到左右两边小于heights[i]的位置呢?当前遍历到的比heights[i]小的位置就是右侧index,用stack保存一个升序序列当前栈顶就是左侧index。而heights[i]为当前栈pop出的元素。最后要用一个0把stack里面的所有元素全部pop出来,计算出以其为最小长度的矩形面积。
public class Solution { public int largestRectangleArea(int[] heights) { // 始终保持升序序列 Stack<Integer> stack = new Stack(); int res = 0; for (int i = 0; i <= heights.length; i++) { int height = i == heights.length ? 0 : heights[i]; while (!stack.isEmpty() && height <= heights[stack.peek()]) { int h = heights[stack.pop()]; int j = stack.isEmpty() ? -1 : stack.peek(); res = Math.max(res, h * (i - j - 1)); } stack.push(i); } return res; }}
0 0
- [Leetcode] 84. Largest Rectangle in Histogram
- LeetCode --- 84. Largest Rectangle in Histogram
- [LeetCode]*84.Largest Rectangle in Histogram
- [leetcode] 84.Largest Rectangle in Histogram
- [leetcode] 84. Largest Rectangle in Histogram
- Leetcode 84. Largest Rectangle in Histogram
- **LeetCode 84. Largest Rectangle in Histogram
- leetcode 84. Largest Rectangle in Histogram
- leetcode 84. Largest Rectangle in Histogram
- 【leetcode】84. Largest Rectangle in Histogram
- LeetCode 84. Largest Rectangle in Histogram
- LeetCode-84.Largest Rectangle in Histogram
- leetcode.84. Largest Rectangle in Histogram
- [leetcode] 【栈】 84. Largest Rectangle in Histogram
- Leetcode 84. Largest Rectangle in Histogram
- [LeetCode] 84. Largest Rectangle in Histogram
- LeetCode 84. Largest Rectangle in Histogram
- leetcode 84. Largest Rectangle in Histogram
- Py-faster-rcnn实现自己的数据train和demo
- 程序打包, Invalid Code Signing Entitlements
- FAQ: ORA-4030 [Video] [ID 399497.1]
- 组件化的web
- 临时表概念
- [LeetCode]84. Largest Rectangle in Histogram
- TBitMap Canvas导致Out of System resource异常
- mysql增加插入执行sql语句文件的大小
- 快捷复制报错的窗口内容
- 【转载】npm install 无响应解决方案
- 枚举 enum的应用
- centos的软件安装方法rpm和yum
- Java面试题——Spring
- 欢迎使用CSDN-markdown编辑器