文章目录
【11】盛最多水的容器
思路
代码
class Solution:
def maxArea(self, height: List[int]) -> int:
"""
# 法一:穷举法
maxArea = 0
for i in range(len(height)-1):
for j in range(i+1, len(height)):
if (j-i)*min(height[i], height[j]) > maxArea:
maxArea = (j-i)*min(height[i], height[j])
return maxArea
"""
# 法二:双指针法
i, j, maxArea = 0, len(height)-1, 0
while i != j:
maxArea = max((j-i)*min(height[i], height[j]), maxArea)
if height[i] < height[j]:
i += 1
else:
j -= 1
return maxArea
版权声明:本文为edc3001原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。