LeetCode #349 Intersection of Two Arrays Solution & Explanation

LeetCode Problem

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.

(intersection : The intersection of two arrays is defined as the set of elements that are present in both arrays.)

Example 1:

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

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

C# Solution

Solution1

public class Solution {
    public int[] Intersection(int[] nums1, int[] nums2) {
        int[] disNums1 = nums1.Distinct().ToArray();
        int[] disNums2 = nums2.Distinct().ToArray();
        
        List<int>res = new List<int>();
        
        foreach (int num in disNums1)
        {
            if (disNums2.Contains(num))
            {
                res.Add(num);
            }
        }
        return res.ToArray();
    }
}

In this solution, we use LINQ’s Distinct method to obtain the unique elements from both arrays. Then, we iterate through one array to check for common elements in the other array, and finally return the intersection as an array.


Conclusion

🧡If my solution helps, that is my honor!

🧡You can support me by sharing my posts, thanks a lot

If you got any problem about the explanation, please feel free to let me know

The problem link : Intersection of Two Arrays – LeetCode

Some Random LeetCode posts

Leave a Reply

Your email address will not be published. Required fields are marked *