装最多水的容器 思路: 容器大小由区间长度和高度共同决定。两个指针,从左右逼近,开始的时候,区间长度最大。然后调整长度,选择合适的高度。高度由最小的柱子决定。
class Solution {
public:
int maxArea(
vector<int> heights) {
int n=heights.size();
if(n==
1)
return 0;
int i=
0,j=n-
1;
int maxarea=
0;
while(i<j){
maxarea=max(maxarea,min(heights[i],heights[j])*(j-i));
if(heights[i]<heights[j])
i++;
else
j--;
}
return maxarea;
}
};