贪心2-- Largest Rectangle in Histogram(LeetCode84)
来源:互联网 发布:卓奇电脑网络服务中心 编辑:程序博客网 时间:2024/06/05 08:13
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 = 10
unit.
For example,
Given heights = [2,1,5,6,2,3]
,
return 10
.
public class Solution { // 跳跃的优化: 贪心的思想 public int largestRectangleArea(int[] heights) { int n = heights.length; if(n == 0){ return 0; } int[] left = new int[n]; left[0] = 0; for(int i = 1; i < n; i++){ int A = i; while(A >0 && heights[A - 1] >= heights[i]){ A = left[A-1]; } left[i] = A; } int[] right = new int[n]; right[n-1] = n-1; for(int i = n-2; i >= 0; i--){ int A = i; while(A < n - 1 && heights[A+1] >= heights[i]){ A = right[A + 1]; } right[i] = A; } int ans = 0; for(int i = 0; i < n; i++){ ans = Math.max(ans, heights[i] * (right[i] - left[i] + 1)); } return ans; }}
阅读全文
0 0
- 贪心2-- Largest Rectangle in Histogram(LeetCode84)
- leetcode84: Largest Rectangle in Histogram
- LeetCode84. Largest Rectangle in Histogram
- LeetCode84. Largest Rectangle in Histogram
- LeetCode84 --Largest Rectangle in Histogram
- leetcode84. Largest Rectangle in Histogram
- Leetcode84. Largest Rectangle in Histogram
- Leetcode84. Largest Rectangle in Histogram.
- LeetCode84 Largest Rectangle in Histogram
- LeetCode84 Largest Rectangle in Histogram java题解
- LeetCode84——Largest Rectangle in Histogram
- Largest Rectangle in Histogram
- Largest Rectangle in Histogram
- Largest Rectangle in Histogram
- Largest Rectangle in Histogram
- Largest Rectangle in Histogram
- Largest Rectangle in Histogram
- Largest Rectangle in Histogram
- poj 2186_Popular Cows_强连通分量
- Eclipse导入Maven项目提示:Missing artifact sun.jdk:jconsole:jar:1.8
- 开始写blog
- 【设计模式】——单例模式
- Codeforces Round #415 (Div. 2) D. Glad to see you! 二分, 交互
- 贪心2-- Largest Rectangle in Histogram(LeetCode84)
- C语言深度剖析学习笔记-指针、数组、内存、函数
- Eclipse下编写C++程序——CDT环境搭建
- Java mail-1.4.5.jar 发送邮件
- bzoj1858: [Scoi2010]序列操作
- Spring @RequestMapping
- Linux运维 -- day01 使用VMware安装Linux系统
- Struts2_简单的Struts项目体验
- 构建高性能Web站点(读书笔记)