加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

leetcode--两数之和(1)

发布时间:2020-12-16 19:14:45 所属栏目:大数据 来源:网络整理
导读:1.给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。 你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。 示例: 给定 nums = [2,7,11,15],target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0,1] go实现: package maini

1.给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。

你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。

示例:

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

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

go实现:

package main

import (
    "fmt"
)

func main() {
    nums := []int{1,3,4,6,10}
    target := 17
    newArr := twoSum(nums,target)
    fmt.Println(newArr)
}

func twoSum(nums []int,target int) []int {
    maps := make(map[int]int)
    for index,value := range nums {
        member := target - value
        if _,ok := maps[member]; ok {
            return []int{member,value}
        } else {
            maps[value] = index
        }
    }
    return []int{}
}

时间复杂度o(n);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读