题解 | 两个数组的交集

import java.util.*;

//核心概念,哈希
public class Solution {
    public ArrayList<Integer> intersection (ArrayList<Integer> nums1, ArrayList<Integer>nums2) {
        boolean[] hash = new boolean[1001];
        for(int x : nums1){//遍历nums1
            hash[x] = true;//将对应元素在hash中的下标值标记为true
        }
        ArrayList<Integer> ret = new ArrayList<>(); 
        for(int x : nums2){//遍历nums2
            if(hash[x]){//如果该元素对应hash中下标值为true,就说明已经出现过了
                ret.add(x);
                hash[x]=false;//添加完后删除,防止元素重复出现
                
            }
        }

        return ret;

    }
}

全部评论

相关推荐

评论
1
1
分享

创作者周榜

更多
牛客网
牛客企业服务