[leetCode 349]数组交集 & 一些想法
这道题主要学习了以下java中hashSet的用法,hashSet存放无序但不重复的数据,可以用来去重,并且访问速度很快。
另外在做这道题的时候,发现java基本的数据类型,比如数组,String这些,想要求他们的长度都是 .length ,但是数组是.length,String是 .length()。
而高级数据结构里面,比如ArrayList,HashSet,HashMap这些,求他们的长度都是用 .size(),不知道为什么定义的名字要不一样,后面弄懂了再回来改
class Solution {
public int[] intersection(int[] nums1, int[] nums2) {
HashSet<Integer> hashset1=new HashSet<Integer>();
for(int i=0;i<nums1.length;i++){
hashset1.add(nums1[i]);
}
HashSet<Integer> hashset2=new HashSet<Integer>();
for(int i=0;i<nums2.length;i++){
if(hashset1.contains(nums2[i]))
hashset2.add(nums2[i]);
}
int[] array=new int[hashset2.size()];
int j=0;
for(Integer i : hashset2){
array[j++]=i;
}
return array;
}
}
