1、题目描述
给定n个非负整数表示直方图的条形高度,其中每个条形的宽度为1,找到直方图中最大矩形的区域。
输入: [2,1,5,6,2,3] 输出: 10
2、解题思路
(1)暴力破解
找出直方图中的所有矩形,然后求最大的面积,这种方法的时间复杂度为O(n^2),空间复杂度为O(1)。代码如下:
int largestRectangleArea(vector<int>& heights) {
if (heights.size() == 0)
{
return 0;
}
int max = heights[0];
for (int i = 0; i < heights.size(); i++)
{
int area;
for (int j = i; j >