2021-09-10:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案(

Posted 福大大架构师每日一题

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021-09-10:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案(相关的知识,希望对你有一定的参考价值。

2021-09-10:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案,但是数组中同一个元素在答案里不能重复出现,你可以按任意顺序返回答案。

福大大 答案2021-09-10:

使用map。
时间复杂度:O(N)。
空间复杂度:O(N)。

代码用golang编写。代码如下:

package main

import "fmt"

func main() {
    nums := []int{1, 3, 5}
    target := 6
    ret := twoSum(nums, target)
    fmt.Println(ret)
}

func twoSum(nums []int, target int) []int {
    // key 某个之前的数   value 这个数出现的位置
    map0 := make(map[int]int)
    for i := 0; i < len(nums); i++ {
        if _, ok := map0[target-nums[i]]; ok {
            return []int{map0[target-nums[i]], i}
        }
        map0[nums[i]] = i
    }
    return []int{-1, -1}
}

执行结果如下:


左神java代码

以上是关于2021-09-10:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案(的主要内容,如果未能解决你的问题,请参考以下文章

给定一个整数数组和一个目标值,找出数组中和为目标值的两个数 例如给定nums = [2,7,11,15],target = 9

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

给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。

Java每日算法--给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标

LeetCode真题349:给定两个数组,编写一个函数来计算它们的交集。

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中