349. 两个数组的交集
难度:Low
掌握程度:Low
暴力解法
var intersection = function(nums1, nums2) {
const result = new Set();
for(num of nums1){
#如果num2中还有num,就加进去
if(nums2.includes(num)){
result.add(num);
}
}
#题目最后要求返回一个array,而不是一个set,转化一下
return Array.from(result);
};
上面的解法复杂度是O(n)
下面这个简化解法是O(1)
主要操作是把值放到set里面,然后调用.has函数
var intersection = function(nums1, nums2) {
const result = new Set();
#有一个新的set,然后把值放进去
const set = new Set();
for(num of nums2){
set.add(num);
}
for(num of nums1){
if(set.has(num)){
result.add(num);
}
}
return Array.from(result);
};