Ruka
2 min readMar 18, 2020

--

[LeetCode][python3]0011. Container With Most Water

Start the journey
N2I -2020.03.18

  1. My first try
class Solution:
def maxArea(self, height: List[int]) -> int:
maxcon = min(height[0],height[-1])*(len(height)-1)
i=0
j=len(height)-1
while j>i:
if height[i]>height[j]:
j=j-1
else :
i=i+1
maxcon=max(maxcon,min(height[i],height[j])*(j-i))
return maxcon
N2I -2020.03.18

2. A small improvement

class Solution:
def maxArea(self, height: List[int]) -> int:
maxcon = min(height[0],height[-1])*(len(height)-1)
i=0
j=len(height)-1
while j>i:
if height[i]>height[j]:
curcon=height[j]*(j-i)
j=j-1
else :
curcon=height[i]*(j-i)
i=i+1
if curcon>maxcon:
maxcon=curcon
return maxcon
N2I -2020.03.18

Explanation:

In this improvement, we reduce min() and max() in every while loop, this makes the script runs obviously faster.

--

--