题目
分析
双指针的问题,移动的时机判断
代码
public static void main(String[] args) { int[] arr={1,8,6,2,5,4,8,3,7}; int res = maxArea(arr); System.out.println(res); } public static int maxArea(int[] height) { int start=0; int end=height.length-1; int max=0; while(start!=end) { int h=height[start]<height[end]?height[start]:height[end]; int cur=h*(end-start); max=Math.max(max,cur); if(h==height[start]) { start++; }else { end--; } } return max; }
学习情况
1次