classSolution: defmoveZeroes(self, nums: list[int]) -> None: """ Do not return anything, modify nums in-place instead. """ index = 0 for i inrange(len(nums)): if nums[i] != 0: nums[index] = nums[i] index += 1 for i inrange(index, len(nums)): nums[i] = 0
classSolution: defmaxArea(self, height: List[int]) -> int: left = 0 right = len(height)-1 ans = 0 while left < right: curr = (right - left) * min(height[left], height[right]) ans = max(ans, curr) if height[left] < height[right]: left += 1 else: right -= 1 return ans
classSolution: defthreeSum(self, nums: list[int]) -> list[list[int]]: ans = [] nums = sorted(nums) for i inrange(len(nums)-2): #1 if i > 0and nums[i] == nums[i-1]: # 3 continue else: left = i + 1 right = len(nums) - 1 while left < right: if nums[left] + nums[i] + nums[right] == 0: ans.append([nums[left], nums[i], nums[right]]) left += 1 right -= 1 # 2 while left < right and nums[left] == nums[left-1]: left += 1 while left < right and nums[right] == nums[right+1]: right -= 1
elif nums[left] + nums[i] + nums[right] > 0: right -= 1 elif nums[left] + nums[i] + nums[right] < 0: left += 1 return ans