349.两个变量的交集(javascript)349.IntersectionofTwoArrays
原创leetcode: https://leetcode-cn.com/problems/intersection-of-two-arrays/
给定两个数组 nums1 和 nums2 ,返回 他们的交集 。输出结果中的每个元素必须是 唯一 属于我们可以 无论输出顺序如何 。
Given two integer arrays nums1 and nums2, return an array of their intersection. Each element in the result must be unique and you may return the result in any order.
示例 1:
输入:nums1 = [1,2,2,1], nums2 = [2,2]
输出:[2]
Example 1:
Input: nums1 = [1,2,2,1], nums2 = [2,2]
Output: [2]
示例 2:
输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]
输出:[9,4]
解释:[4,9] 还可以
Example 2:
Input: nums1 = [4,9,5], nums2 = [9,4,9,8,4]
Output: [9,4]
Explanation: [4,9] is also accepted.
第一步:威尔nums1数组的每个项都添加到新的map中
第二步:威尔nums2数组在map存在的每个项目都被添加到一个新数组中(为了不重复,您需要添加判断,因为它不存在于新数组中,然后添加它)
var intersection = function (nums1, nums2) {
    let len1 = nums1.length;
    let len2 = nums2.length;
    let newList = []
    let h = new Map()
    for (let i = 0; i < len1; i++) {
        if (!h.has(nums1[i])) {
            h.set(nums1[i])
        }
    }
    for (let i = 0; i < len2; i++) {
        if (h.has(nums2[i])) {
            if (newList.indexOf(nums2[i] )== -1){
                newList.push(nums2[i])
            }
        }
    }
    return newList
};
var intersection = function (nums1, nums2) {
    let mySet1=new Set(nums1)
    let mySet2=new Set(nums2)
    let newList=[...mySet1].filter(item=>mySet2.has(item))
    return newList
};版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除
 itfan123
itfan123







