今天看leetcode上一个例题的时候有很大的感触,原来Python可以这么简洁。
问题描述原问题链接:
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍
首先想到的就是两层循环暴力求解,但是在跑一些用例的时候超时退出💁
后面有个精华贴,快速简洁的解决了该问题,5行代码完事,给我很大触动。以为记!
def twoSum(nums: List[int], target: int) -> List[int]:
hashmap = {}
for i, num in enumerate(nums):
if(target-num) in hashmap:
return [hashmap[target-num], i]
hashmap[num] = i