前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >548. 两数组的交 II 排序+双指针

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

作者头像
和蔼的zhxing
发布2018-09-04 13:12:44
3760
发布2018-09-04 13:12:44
举报
文章被收录于专栏:和蔼的张星的图像处理专栏

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

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

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

排序+双指针

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

代码语言:javascript
复制
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;
    }

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.12.06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 排序+双指针
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档