问题:
Given two arrays, write a function to compute their intersection.
Example:
Given nums1 = [1, 2, 2, 1], nums2 = [2, 2], return [2].
Note:
Each element in the result must be unique.
The result can be in any order.
给出两个数组,写一个函数得出他们的交。
例如:
nums1 = [1, 2, 2, 1], nums2 = [2, 2], 返回[2]
备注:
返回值中的每个元素都不一样。
结果可以是任意顺序。
代码:
class Solution {
public:
vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
int len1 = nums1.size();
int len2 = nums2.size();
vector<int> res, nums3;
for (int i = 0; i < len1; i++) {//取相同元素插入nums3数组
for (int k = 0; k < len2; k++) {
if (nums1[i] == nums2[k]) {
nums3.push_back(nums1[i]);
break;
}
}
}
int len3 = nums3.size();
for (int j = 0; j < len3; j++) {//去除nums3中的不同元素取出插入res数组
int isexit = 0;
int len4 = res.size();
for (int m = 0; m < len4; m++) {
if (nums3[j] == res[m]) {
isexit = 1;
break;
}
}
if (isexit == 0) {
res.push_back(nums3[j]);
}
}
return res;
}
};
网友评论