1. Two Sum
You are given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target
ArrayExample 1:
- Input:
nums = [2,7,11,15], target = 9 - Output:
[0,1] - Explanation: Because
nums[0] + nums[1]==9, we return [0, 1].
Example 2:
- Input:
nums = [3,2,4], target = 6 - Output:
[1,2]
Example 3:
- Input:
nums = [3,3], target = 6 - Output:
[0,1]
Constraints:
2 <= nums.length <= 10^4-10^9 <= nums[i] <= 10^9-10^9 <= target <= 10^9- Only one valid answer exists.
Approach
Solution
class Solution:
def twoSum(self, nums: List[int], target: int) -> List[int]:
seen = {}
for i, num in enumerate(nums):
complement = target - num
if complement in seen:
return [seen[complement], i]
seen[num] = i
return []