《双指针篇》---盛最多水的容器_Java(中等但简单)
题目传送门
1.首先计算出暂时的盛水体积
2.求暂时体积和最大体积max的最大值
3.更新right和left。如果height[left] > height[right] 那么right--否则left++;
class Solution {
public int maxArea(int[] height) {
int left = 0,right = height.length-1; int ret = 0;
while (left < right){
/**
* 暂时的容量
*/
int temp = Math.min(height[left],height[right]) * (right-left);
/**
* 更新容量,找到最大值
*/
ret = Math.max(temp,ret);
/**
*
*/
if(height[left] > height[right]){
right--;
}else {
left++;
}
}
return ret;
}
}