Leetcode # 15. 3Sum

https://leetcode.com/problems/3sum/

Solution

Time Complexity: O(n ^ 2)
Space Complexity: O(n)

class Solution:
  def threeSum(self, nums: List[int]) -> List[List[int]]:
    dups = set() #duplicates
    ans = set()
    for i, n1 in enumerate(nums):
      if n1 not in dups:
        dups.add(n1)
      
      seen = set()
      for j, n2 in enumerate(nums[i + 1:]):
        complement= -n1 - n2
        if complement in seen:
          ans.add(tuple(sorted([n1, n2, complement])))
        seen.add(n2)
    
    return ans

相關例題

Leetcode # 1. Two Sum

Leetcode # 167. Two Sum II – Input Array Is Sorted

Last Updated on 2023/08/16 by A1go

目錄
Bitnami