思路
这道题可以用桶处理。先遍历nums1,用桶保存nums1中出现的数字。再遍历nums2,如果有重合就记录一下。最后遍历一遍a,把有重合标记的放入结果数组。
代码
vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
vector<int> b;
int a[1010][2];
for(int i=0;i<=1000;i++) {
a[i][1]=0;
}
for(int i=0;i<=nums1.size()-1;i++) {
a[nums1[i]][1]++;
}
for(int i=0;i<=nums2.size()-1;i++) {
if(a[nums2[i]][1]>0) {
a[nums2[i]][0]=1;
}
}
for(int i=0;i<=1000;i++) {
if(a[i][0]==1) {
b.push_back(i);
}
}
return b;
}
};



