Problem · Array
Largest Rectangle in Histogram
Learn this problemProblem statement
Given an integer array heights representing a histogram, where every bar has width 1, return the area of the largest rectangle that can be formed using one or more consecutive bars.
Function
largestRectangleArea(heights: int[]) → intExamples
Example 1
heights = [2,1,5,6,2,3]return = 10The bars of heights 5 and 6 form a rectangle of height 5 and width 2.
Example 2
heights = [2,4]return = 4The best area is 4, achieved either by the second bar alone or by both bars at height 2.
Example 3
heights = [0]return = 0The only bar has height 0, so no positive-area rectangle exists.
Constraints
1 <= heights.length <= 100000.0 <= heights[i] <= 10000.