All Downloads are FREE. Search and download functionalities are using the official Maven repository.

g0301_0400.s0349_intersection_of_two_arrays.Solution Maven / Gradle / Ivy

package g0301_0400.s0349_intersection_of_two_arrays;

// #Easy #Array #Hash_Table #Sorting #Binary_Search #Two_Pointers
// #2022_07_11_Time_1_ms_(99.77%)_Space_42.3_MB_(92.31%)

import java.util.ArrayList;
import java.util.List;

/**
 * 349 - Intersection of Two Arrays\.
 *
 * Easy
 *
 * 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:** [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`
**/
public class Solution {
    public int[] intersection(int[] nums1, int[] nums2) {
        boolean[] occ = new boolean[1001];
        for (int k : nums1) {
            occ[k] = true;
        }
        List res = new ArrayList<>();
        for (int j : nums2) {
            if (occ[j]) {
                occ[j] = false;
                res.add(j);
            }
        }
        int[] result = new int[res.size()];
        for (int i = 0; i < res.size(); i++) {
            result[i] = res.get(i);
        }
        return result;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy