想法很简单,难的是证明
左右指针指向开头和结尾
将短板的指针向内移动一格
难的是如何证明这么做能让面积最大。
class Solution {
public int maxArea(int[] height) {
int len = height.length;
int first = 0;
int second = len - 1;
int ans = 0;
int now;
while (first != second) {
if (height[first] > height[second]) {
now = (second - first) * height[second];
second--;
} else {
now = (second - first) * height[first];
first++;
}
if (now > ans) {
ans = now;
}
}
return ans;
}
}

该博客探讨了一种动态规划算法,用于解决给定一组高度的矩形条,如何通过移动左右指针找到最大覆盖面积的问题。算法通过比较左右指针所指矩形的高度,动态更新最大面积。在不断移动指针的过程中,确保了能找到组合的最大面积。
569

被折叠的 条评论
为什么被折叠?



