[LeetCode By Go 32]349. Intersection of Two Arrays

题目

Given two arrays, write a function to compute their intersection.

Example:
Given nums1 = [1, 2, 2, 1], nums2 = [2, 2], return [2].

Note:

  • Each element in the result must be unique.
  • The result can be in any order.

解题思路

  1. 将nums1中的元素放入map[int]bool中,值初始化为false
  2. 遍历nums2,map中存在的元素值置为true
  3. 遍历map,取出值为true的元素
    注意
    第三步遍历map的目的是防止有多个重复的相交元素出现

代码

intersection.go

package _349_Intersection_of_Two_Arrays

func intersection(nums1 []int, nums2 []int) []int {
    var ret []int

    var numMap map[int]bool
    numMap = make(map[int]bool)

    for _, v := range nums1 {
        numMap[v] = false
    }

    for _, v := range nums2 {
        _, ok := numMap[v]
        if ok {
            numMap[v] = true
        }
    }

    for k, v := range numMap {
        if v  {
            ret = append(ret, k)
        }
    }
    return ret
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 我不得不说,中餐厅真的是一个成功的美食类节目,每次看着新鲜出炉的菜品都好想吃,但是周冬雨当主厨做出来的饭我真的保持...
    臭美的风铃阅读 3,567评论 0 0
  • 凡事向内求。 只有自己明白自己想要什么。 你走的路,做的事,是否跟你想要的一切契合? 如果不是,那你注定绕远路,或...
    兔子前辈阅读 5,550评论 0 1
  • 茫茫人海 人海茫茫 与你相遇相识相知相爱 好幸运 不觉时间匆匆 不闻流水潺潺 不知花落花开 不管夕阳西下 光阴荏苒...
    盏灵阅读 1,469评论 0 3
  • 今天继续聊到的是在我们生活中出场率很高的另一类神仙,土地爷。 这个神仙大家就都很熟悉了,现在的北方农村基本上每一家...
    李发师阅读 3,887评论 0 1