https://leetcode-cn.com/problems/intersection-of-two-arrays/
点击查看【bilibili】
题目
示例
输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2]输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[9,4]
解答
考虑保证不重复,要用set
答案
var intersection = function(nums1, nums2) {const result = new Set()for(num of nums1) {// includes 嵌套循环 数组搜索值,复杂度O(n)// Set Map - has 复杂度O(1)if(nums2.includes(num)) {result.add(num)}}return Array.from(result)};
优化
var intersection = function(nums1, nums2) {
const result = new Set()
const set = new Set(nums2)
for(num of nums1) {
if(set.has(num)) {
result.add(num)
}
}
return Array.from(result)
};
