funclargestRectangleArea(heights []int)int{var max intvar stack =make([]int,0)var nums =make([]int,0)
nums =append(nums,[]int{0}...)
nums =append(nums, heights...)
nums =append(nums,[]int{0}...)for i :=0; i <len(nums); i++{forlen(stack)>0&& nums[stack[len(stack)-1]]> nums[i]{
tmp := stack[len(stack)-1]
stack = stack[0:len(stack)-1]
max =Max(max, nums[tmp]*(i-stack[len(stack)-1]-1))}
stack =append(stack, i)}return max
}funcMax(a, b int)int{if a > b{return a
}else{return b
}}
描述给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾勒出来的矩形的最大面积。示例:输入: [2,1,5,6,2,3]输出: 10思路实现func largestRectangleArea(heights []int) int { var max int var stack = make([]int, 0...