LeetCode题解:84. 柱状图中最大的矩形,双循环暴力,JavaScript,详细注释

tech2023-02-20  111

原题链接:https://leetcode-cn.com/problems/largest-rectangle-in-histogram/

解题思路:

利用双循环,枚举所有可能的宽度。查找在当前宽度下的最小高度。计算所有宽高下的面积,在其中查找最大值。 /** * @param {number[]} heights * @return {number} */ var largestRectangleArea = function (heights) { let area = 0; for (let i = 0; i < heights.length; i++) { // 记录当前枚举到的高度 let minHeight = heights[i]; for (let j = i; j < heights.length; j++) { // 不断向后枚举,寻找当前宽度下的最小高度 minHeight = Math.min(minHeight, heights[j]); // 计算当前宽度和最小高度对应的面积 area = Math.max(minHeight * (j - i + 1), area); } } return area; };
最新回复(0)