11. 盛最多水的容器
题目:
思路:
【1】双指针思路
代码展示:
//时间4 ms击败58.43% //内存51.3 MB击败74.56% //采用双指针的方式 //本质上装水容量的大小取决于两边最小的短板乘上他们之间的距离 //如果移动短板的话有可能容量变多或者变少 //但是如果移动长板那么必然就是容量变少 class Solution { public int maxArea(int[] height) { int left = 0; int right = height.length - 1; int res = 0; int lowHeight = 0; while (left < right){ lowHeight = Math.min(height[left],height[right]); res = Math.max(res,((right-left)*lowHeight)); if (lowHeight == height[left]){ left++; }else { right--; } } return res; } }