题解 | #两数之和#

两数之和

http://www.nowcoder.com/practice/20ef0972485e41019e39543e8e895b7f

梦开始的地方

class Solution:
    def twoSum(self , numbers: List[int], target: int) -> List[int]:
        # write code here
        value2index = {}  # 保存见过的数值和index
        for i,num in enumerate(numbers):
            if (target-num) in value2index:
                return [value2index[target-num]+1, i+1]
            value2index[num] = i 

非常简单地保存下前面见过的数字和index,只要后面找到能配对的就结束了。

值得注意的有两个点:

  1. 因为是从左往右遍历,所以在dict里的值对应的index一定比当前index小,所以不需要判断;
  2. 别忘了下标+1.
全部评论
花瓣飘来的方向是梦开始的方向
点赞 回复 分享
发布于 2022-03-09 10:12

相关推荐

面试摇了我吧:啊哈哈面试提前五个小时发,点击不能参加就是放弃
点赞 评论 收藏
分享
25 1 评论
分享
牛客网
牛客企业服务