Java實現-兩數組的交1

返回兩個數組的交

 注意事項
  • Each element in the result must be unique.
  • The result can be in any order.
樣例

nums1 = [1, 2, 2, 1], nums2 = [2, 2], 返回 [2].

public class Solution {
    /**
     * @param nums1 an integer array
     * @param nums2 an integer array
     * @return an integer array
     */
    public int[] intersection(int[] nums1, int[] nums2) {
        // Write your code here
        Set<Integer> set=new HashSet<Integer>();
		Set<Integer> set1=new HashSet<Integer>();
		Set<Integer> set2=new HashSet<Integer>();	
		for(int i=0;i<nums1.length;i++){
			set1.add(nums1[i]);
		}
		for(int i=0;i<nums2.length;i++){
			set2.add(nums2[i]);
		}
		Iterator<Integer> it1=set1.iterator();
		while(it1.hasNext()){
			int temp=it1.next();
			if(set2.contains(temp)){
				set.add(temp);
				set2.remove(temp);
			}
		}
		
		int []result=new int[set.size()];
		Iterator<Integer> it=set.iterator();
		int index=0;
		while(it.hasNext()){
			result[index++]=it.next();
		}
		return result;
    }
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章