# LeetCode Notes: Intersection of Two Arrays

## Question

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.

Example 1:

Input: nums1 = [1,2,2,1], nums2 = [2,2]

Output: 

Example 2:

Input: nums1 = [4,9,5], nums2 = [9,4,9,8,4]

Output: [9,4]

Explanation: [4,9] is also accepted.

Constraints:

• `1 <= nums1.length, nums2.length <= 1000`
• `0 <= nums1[i], nums2[i] <= 1000`

## Solution

Analysis:

1. Loop one of the arrays to determine whether each number is contained in the other array
2. Store each included number and remove the duplicates at the end

Code:

``````/**
* @param {number[]} nums1
* @param {number[]} nums2
* @return {number[]}
*/
var intersection = function(nums1, nums2) {
// Store the result
const res = []
// loop the first array
nums1.forEach((n)=>{
// Find numbers in the second array that are also in the first array
if(nums2.includes(n)){
res.push(n)
}
})

// deduplication
return [...new Set(res)]
};
``````