算法7:两个数组的交集

题目链接

解析:

完整代码:

cpp 复制代码
class Solution {
public:
    vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
    //去重+排序
    set<int> s1( nums1.begin(), nums1.end() );
    set<int> s2( nums2.begin(), nums2.end() );
    //比较,相等就是交集,不等就是差集,小的++
    vector<int> ret;
    auto it1 = s1.begin();
    auto it2 = s2.begin();
    while( it1 != s1.end() && it2 !=s2.end() )
    {
        if(*it1 < *it2)
        {
            it1++;
        }
        else if(*it1 > *it2)
        {
            it2++; 
        }
        else
        {
            ret.push_back(*it1);
            it1++;
            it2++;
        }

    }
    return ret;

    }
};
相关推荐
Gauss松鼠会11 小时前
【GaussDB】GaussDB SMP特性调优详解
java·服务器·前端·数据库·sql·算法·gaussdb
Tisfy11 小时前
LeetCode 3689.最大子数组总值 I:What The Medium
算法·leetcode·题解·贪心·模拟·脑筋急转弯
葬送的代码人生11 小时前
JavaScript 数组完全指南:从入门到实战
前端·javascript·算法
春日见11 小时前
决策规划控制面经汇总
人工智能·深度学习·算法·机器学习·自动驾驶
Full Stack Developme11 小时前
Java DFA算法
java·python·算法
fie888911 小时前
LBP + HOG 特征检测与识别 MATLAB 实现
数据结构·算法·matlab
海天鹰11 小时前
图片去黑边算法
qt·算法
xxwl58512 小时前
一个原创题(二)
c++·算法
moeyui70512 小时前
LeetCode 380:Insert Delete GetRandom O(1) 题解和一些延伸
算法·leetcode·职场和发展
三千里12 小时前
路径规划算法-备忘
算法·自动驾驶·动态规划