Last updated 2 years ago
两数之和_牛客题霸_牛客网
问题简述
给出一个整型数组 numbers 和一个目标值 target,请在数组中找出两个加起来等于目标值的数的下标,返回的下标按升序排列。
思路
使用哈希表保存已经出现过的数字及其下标;
利用差值可以在一次遍历中完成;
class Solution: def twoSum(self , numbers: List[int], target: int) -> List[int]: dt = dict() for i, x in enumerate(numbers): if (r := target - x) in dt: return [dt[r], i + 1] else: dt[x] = i + 1 return []