leetcode(1)---两数之和

不时更新力扣题库,使用python实现,比较通俗易懂,其中注释是我自己的理解:

def two_sum(nums, target):
    # 构建hashmap存取数字与索引,其中key为nums里的值,value为索引,方便第二次遍历时取值
    hashmap = {
     }
    # 获取列表里的索引以及数字
    for ind, num in enumerate(nums):
        # 分别赋值
        hashmap[num] = ind
        # 再次遍历列表
    for i, num in enumerate(nums):
        # 直接去寻找目标j,如果有就返回,没有就是none
        j = hashmap.get(target - num)
        if j is not None and i != j:
            return [i, j]


if __name__ == '__main__':
    print(two_sum([2, 7, 11, 15], 9))

你可能感兴趣的:(python,列表,索引,hashmap,leetcode)