暴力求解 双重循环遍历数组 时间复杂度 O(N^2)
class Solution:
def twoSum(self, nums: List[int], target: int) -> List[int]:
for i in range(len(nums) - 1):
for j in range(i + 1, len(nums)):
if nums[i] + nums[j] == target:
return [i, j]
return []
使用dict进行查找 时间复杂度O(N)
class Solution:
def twoSum(self, nums: List[int], target: int) -> List[int]:
d = {}
for i in range(len(nums)):
if (target - nums[i]) in d:
return [d[target - nums[i]], i]
d[nums[i]] = i
return []