548. 两数组的交 II 排序+双指针

计算两个数组的交 注意事项:

每个元素出现次数得和在数组里一样 答案可以以任意顺序给出

样例 nums1 = [1, 2, 2, 1], nums2 = [2, 2], 返回 [2, 2].

排序+双指针

和547相同,这里不过要求不去重,不去重相对来说是简单的,排序后用双指针是最简单的一个方法:

vector<int> intersection(vector<int> nums1, vector<int> nums2) {
        // write your code here
        if(nums1.empty()||nums2.empty())     //特殊情况
        return vector<int>();  
        sort(nums1.begin(),nums1.end());
        sort(nums2.begin(),nums2.end());
         //双指针
        auto beg1=nums1.begin();
        auto beg2=nums2.begin();  
        vector<int> res;
         //双指针遍历
        while(beg1!=nums1.end()&&beg2!=nums2.end())
        {
            if(*beg1==*beg2)
            {
                res.push_back(*beg1);
                beg1++;
                beg2++;
            }
            else if(*beg1<*beg2)
            {
                beg1++;
            }
            else beg2++;
        }
        return res;
    }

基本上没有什么要注意的,特殊情况排除掉就可以了。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏DT乱“码”

Java中实现多线程有两种途径

Java中实现多线程有两种途径:继承Thread类或者实现Runnable接口. Runnable接口非常简单,就定义了一个方法run(),继承Runnable...

22150
来自专栏

特色

摘要: 程序中常常需要复制一个对象, 按思路应该是这样的a = [1, 2, 3]b = a# [1, 2, 3]print b 已经复制好了,但是现在得改变一...

9240
来自专栏程序手艺人

C与C++的升级关系

33450
来自专栏Python小屋

黑客走开系列1:Python使用元组做函数实参让代码更安全!

在Python内置对象中,列表、字典、集合属于可变序列,作为函数实参是不安全的,尤其是调用别人写好的恶意函数或者调用被人恶意修改过的函数时,很容易被修改实参。而...

28970
来自专栏GopherCoder

Python 强化训练:第五篇

16030
来自专栏数据结构与算法

P1198 [JSOI2008]最大数

题目描述 现在请求你维护一个数列,要求提供以下两种操作: 1、 查询操作。 语法:Q L 功能:查询当前数列中末尾L个数中的最大的数,并输出这个数的值。 限制:...

30690
来自专栏不想当开发的产品不是好测试

java匿名内部类

show the code : package com.test.jwen.httpApiAuto; public class AInter { publ...

23370
来自专栏java一日一条

自己动手实现一个 Java Class 解析器

最近在写一个私人项目,名字叫做ClassAnalyzer,ClassAnalyzer的目的是能让我们对Java Class文件的设计与结构能够有一个深入的理解。...

13740
来自专栏我的博客

echo、print、print_r、var_dump使用和区别

1、echo — Output one or more strings(输出一个或者多个字符串) 2、print — Output a string(输出一个字...

31370
来自专栏Python小屋

奇怪,Python有的函数调用需要两对括号?(2)

在Python中,允许嵌套定义函数,也就是在一个函数A中可以定义另一个函数B。另外,在Python中,可调用对象可以分为三类:1)函数,2)类,3)含有特殊方法...

33890

扫码关注云+社区

领取腾讯云代金券