题目描述:
    给定两个数组,编写一个函数来计算它们的交集。

    题目示例:
    范例1:
    输入: nums1 = [1,2,2,1],nums2 = [2,2]
    输出:[2]
    范例2:
    输入: nums1 = [4,9,5],nums2 = [9,4,9,8,4]
    输出:[9,4]

    读题可知:
    俩集合的交集。

    思考:
    1、平推用嵌套for循环找出交集—将判断出的数用set来收集。
    2、考虑先用set类收集其中一个集合,目的使其无重复(set的特性无序且不重复)

    代码(一):(运行时间和内存调用不太理想)运行时间:8ms 内存消耗:39.2 MB
    public int[] intersection(int[] nums1, int[] nums2) {
    HashSet mes = new HashSet();
    for (int i = 0; i < nums1.length; i++) {
    for (int j = 0; j < nums2.length; j++) {
    if (nums1[i] == nums2[j]) {
    mes.add(nums1[i]);
    }
    }
    }
    List list = new ArrayList(mes);
    int[] result = new int[list.size()];
    for (int i = 0; i < list.size(); i++) {
    result[i] = (int) list.get(i);
    }
    return result;
    }

    代码(二):运行时间:4 ms 内存消耗:41.1 MB
    class Solution {
    public int[] intersection(int[] nums1, int[] nums2) {
    HashSet set=new HashSet();

    for(int item:nums1)
    {
    set.add(item);
    }
    HashSet intersection=new HashSet();

    for(int i:nums2)
    {
    if(set.contains(i))
    {
    intersection.add(i);
    }

    int result[]=new int[intersection.size()];
    int index=0;
    for(int j:intersection)
    {
    result[index]=j;
    index++;
    }
    return result;
    }
    }