public class MaxArea {
public int maxArea(int[] height) {
int sum = 0;
for (int i = 0, j = height.length - 1; i < j;) {
if (sum < Math.min(height[i], height[j]) * (j - i)) {
sum = Math.min(height[i], height[j]) * (j - i);
}else {
if (height[i] < height[j]) {
i++;
}else {
j--;
}
}
}
return sum;
}
}
首先识别出这是一个双指针问题。其次,双指针问题都是通过指针移动,排除掉不可能的组合。