題目描述:
給定一個(gè)整數(shù)數(shù)組 nums和一個(gè)目標(biāo)值 target郭脂,請(qǐng)你在該數(shù)組中找出和為目標(biāo)值的那兩個(gè)整數(shù)年碘,并返回他們的數(shù)組下標(biāo)。
你可以假設(shè)每種輸入只會(huì)對(duì)應(yīng)一個(gè)答案展鸡。但是屿衅,你不能重復(fù)利用這個(gè)數(shù)組中同樣的元素莹弊。
示例:
給定 nums = [2, 7, 11, 15], target = 9因?yàn)?nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]
代碼:
class Solution:
def twoSum(self, nums: List[int], target: int) -> List[int]:
data = {nums[i]: i for i,n in enumerate(nums)}
for i in range(len(nums)):
component = target - nums[i]
if component in data and data.get(component) != i:
return [i, data.get(component)]