11. 盛最多水的容器
题目贴在文末
核心思想
长木板向内侧移动,水量一定变少
短木板向内侧移动,水量不一定变多
既然一定变少 那就不动呗,不一定变多 那就试试呗
头尾两个指针,短木板向内移动,计算水量并与最大值做比较
class Solution {
public int maxArea(int[] height) {
int i = 0,
int j = height.length - 1
int res = 0;
while(i < j) {
res = height[i] < height[j] ?
Math.max(res, (j - i) * height[i++]):
Math.max(res, (j - i) * height[j--]);
}
return res;
}
}
当时我觉得这个三元运算符也用的很巧妙 这就是上流的味道吗~