Given an array of integers heights representing the histogram's bar height where the width of each bar is 1, return the area of the largest rectangle in the histogram.
We use analytics and advertising cookies to understand how the site is used and whether our ads on Facebook and Instagram work. They are set only if you accept. See our Privacy Policy for details.
Given an array of integers heights representing the histogram's bar height where the width of each bar is 1, return the area of the largest rectangle in the histogram.
A hard monotonic stack problem, graded against 7 test cases (4 of them hidden).
A stack kept sorted, for next-greater and largest-rectangle style questions.
Reach for it when you see: "Next greater/smaller element", or a maximum rectangle/area over a histogram.
More Monotonic Stack problems →Maintain a stack of indices in increasing height order. When a bar shorter than the stack top is encountered, pop and calculate the rectangle area using the popped bar as the shortest bar. The width extends from the new stack top to the current index.
The full reference solution in every supported language stays in the editor above - reveal it there once you have had a real attempt.
Read off this problem's own test suite, so these are the cases a submission actually has to survive.
These apply to the pattern as a whole, not just this problem.