LeetCode 349 两个数组的交集

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 intersection(vector& nums1, vector& nums2) {
        int m = nums1.size();
        int n = nums2.size();
        vector k;
        int p = 0;
        set 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::iterator iter;
        //for (iter = nums.begin(); iter != nums.end(); iter++) {
           // k.push_back(*iter);
       // }
        return k;
    }
};

你可能感兴趣的:(LeetCode 349 两个数组的交集)