leetcode 11.装最多的水
算法思想:要尽可能装多的水,只能使两边的高度大于或等于中间的高度,使用两个指针,分别从数组的前后指,取最小高度乘上宽度则为所求。
代码:
class Solution(object):
def maxArea(self, height):
"""
:type height: List[int]
:rtype: int
"""
maxr = 0;
length = len(height);
i = 0;
k = length -1;
while i<k:
maxr = max(maxr,min(height[i],height[k])*(k-i))
if height[i]<height[k]:
i = i+1;
else:
k = k-1;
return maxr