leetcode两数之和

    科技2022-08-27  95

    leetcode 两数之和

    文章目录

    leetcode 两数之和一、题目二、思路三、代码

    一、题目

    给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个 整数,并返回他们的数组下标。

    你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。

    示例:

    给定 nums = [2, 7, 11, 15], target = 9

    因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1]

    二、思路

    使用hashmap,先遍历nums数组,检验target-nums[i]是否在hashmap中,若在,直接输出;若不在,将nums[i]和[i]添加到hashmap的键值对中。

    三、代码

    func twoSum(nums []int, target int) []int { hashMap := map[int]int{} for i, _ := range nums { _, ok := hashMap[target - nums[i]] if ok { return []int{i, hashMap[target - nums[i]]} } else { hashMap[nums[i]] = i } } return nil }
    Processed: 0.019, SQL: 9