给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。
求在该柱状图中,能够勾勒出来的矩形的最大面积。
思路:采用两次遍历暴力查找,时间复杂度不满足通过要求,等二刷的时候再优化。
class Solution:
def largestRectangleArea(self, heights: [int]) -> int:
maxnum=0
lenh=len(heights)
for i in range(lenh):
for j in range(i,lenh):
minh=min(heights[i:j+1])
maxnum=maxnum if(maxnum>minh*(j+1-i)) else minh*(j+1-i)
return maxnum
if __name__=="__main__":
print(Solution().largestRectangleArea([2,1,5,6,2,3]))