美文网首页
LeetCode 349 两个数组的交集

LeetCode 349 两个数组的交集

作者: 萨缪 | 来源:发表于2019-10-31 19:39 被阅读0次

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;
    }
};

相关文章

网友评论

      本文标题:LeetCode 349 两个数组的交集

      本文链接:https://www.haomeiwen.com/subject/nzztbctx.html