349. 两个数组的交集
给定两个数组,编写一个函数来计算它们的交集。
示例 1:
输入: nums1 = [1,2,2,1], nums2 = [2,2]
输出: [2]
题目的确很简单 但能让我复习知识点,所以就码一下:
这里面set转换为vector类型 可以用vector的assign函数把set中的所有值完整的赋值的到vector中
还有vector总是忘了加入单个元素是push_back 不是传统数组那样添加元素的!
思路就是一个set来筛选重复的两数组相同值 然后再把这个set转化为数组即可
源代码如下:
class Solution {
public:
vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
int m = nums1.size();
int n = nums2.size();
vector<int> k;
int p = 0;
set<int> nums;
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
if (nums1[i] == nums2[j]) {
nums.insert(nums2[j]);
}
}
}
k.assign(nums.begin(), nums.end());
// set<int>::iterator iter;
//for (iter = nums.begin(); iter != nums.end(); iter++) {
// k.push_back(*iter);
// }
return k;
}
};