LeetCode:Largest Rectangle in Histogram
2016-06-15 20:27
246 查看
Largest Rectangle in Histogram
Total Accepted: 61747 TotalSubmissions: 252559 Difficulty: Hard
Given n non-negative integers representing the histogram's bar height where the width of each bar is 1,
find the area of largest rectangle in the histogram.
Above is a histogram where width of each bar is 1, given height =
[2,1,5,6,2,3].
The largest rectangle is shown in the shaded area, which has area =
10unit.
For example,
Given heights =
[2,1,5,6,2,3],
return
10.
Subscribe to see which companies asked this question
Hide Tags
Array Stack
Hide Similar Problems
(H) Maximal Rectangle
思路:
详细分析,可参考:/article/2749967.html
java code:
public class Solution { public int largestRectangleArea(int[] heights) { Stack<Integer> index = new Stack<Integer>(); int len = heights.length; int maxArea = 0; int i = 0; while(i <= len) { int h = (i==len) ? 0 : heights[i]; if(index.isEmpty() || h >= heights[index.peek()]) index.push(i++); else { int tmp = index.pop(); int wid = index.empty() ? i : i-index.peek()-1; maxArea = Math.max(maxArea, heights[tmp] * wid); } } return maxArea; } }
相关文章推荐
- java反射机制
- Android之Activity
- 常用Sublime小技巧
- webview jsoup解析html
- servlet
- js 类的简单实现与调用
- Android 5.1系统动画的调节
- Spark创建RDD
- 文字缓存
- ACM随笔------计蒜客 求平方根
- hdu 2227(树状数组优化dp)
- PHP安装memcache模块时报错Cannot find autoconf. Please check……
- 2、ubuntu 开发环境的搭建
- 字符串(多串后缀自动机):HDU 4436 str2int
- Java反射学习总结(1)——Class类的使用
- 论文:Deep Face Recognition 概括
- Gradle 多渠道打包实践
- 使用cppcheck检测代码警告、错误
- 第16周阅读程序4(2)
- spring MVC配置详解