当前位置: 首页 > news >正文

LeetCode 349题解 | 两个数组的交集

两个数组的交集

  • 一、题目链接
  • 二、题目
  • 三、分析
  • 四、编写代码

一、题目链接

349.两个数组的交集

二、题目

在这里插入图片描述

三、分析

法一:
去重+查找:先对两个数组用set去重,再遍历其中一个数组看这个数组中的元素在另一个数组中出现的次数若为1,那么就push_back到vector< int >里。

法二:
找交集可以用去重+遍历的比对算法:依次比较,小的++;相等的就是交集,同时++。其中一个结束就结束了。(这个算法思路还可以用在找差集:依次比较。小的就是差集,小的++;相等就同时++。其中一个结束就结束了,没结束的那个剩下的元素也是差集。)算法效率比法一高,只需遍历一遍,时间复杂度是O(N)。
在这里插入图片描述

四、编写代码

// 法一
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> v;for (auto e : s1){// 查找if (s2.count(e)){v.push_back(e);}}return v;}
};
// 法二
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());auto it1 = s1.begin(), it2 = s2.begin();vector<int> v;while (it1 != s1.end() && it2 != s2.end()){if (*it1 < *it2){++it1;}else if (*it1 > *it2){++it2;}else{v.push_back(*it1);++it1, ++it2;}}return v;}
};
http://www.lryc.cn/news/575949.html

相关文章:

  • SAP PP模块与MM模块作用详解
  • 航天VR赋能,无人机总测实验舱开启高效新篇​
  • Maven生命周期与阶段扩展深度解析
  • Linux系统(信号篇)信号的保存
  • Post-Training on PAI (1):一文览尽开源强化学习框架在PAI平台的应用
  • 信息抽取数据集全景分析:分类体系、技术演进与挑战_DEEPSEEK
  • CloudFormation 实现 GitHub Actions OIDC 与 AWS ECR 的安全集成(支持多组织配置)
  • 【Linux】ghb工具
  • 论文研读2-3:多GNSS双历元纯相位定位-定位精度分析
  • 【docker】docker run参数说明
  • 便利的隐形代价?智能设备正在“偷听”你的生活——物联网时代的隐私深度危机
  • 系统学习 Android 的 进程管理、内存管理、音频管理
  • Qt 与 Halcon 联合开发六:基于海康SDK设计完整的相机类【附源码】
  • 云计算与人工智能的融合:从弹性算力到智能云的IT新革命
  • 报道称CoreWeave洽谈收购Core Scientific,后者涨超30%
  • 内测开启!看海量化回测系统V2.0版本更新,基于miniQMT的回测系统问世!
  • Android 根据包名查看已安装应用的签名
  • 分布式session解决方案
  • 【Docker】解决:构建(docker build)或重新运行容器时,丢失apt-get update问题
  • 第三十一章 MCO——PA8从主频分频输出
  • 【数据挖掘】关联规则算法学习—Apriori
  • Gitee 持续集成与交付(CI/CD)篇
  • Solidity学习 - 断言失败
  • Java:链接mysql数据库报错:CommunicationsException: Communications link failure
  • MySQL Limit数量不满足时导致查询变慢
  • 深圳中青宝互动网络股份有限公司游戏运维工程师面试题(笔
  • 使用OpenCV进行3D重建:详细指南
  • OpenCV图像添加水印
  • word中如何保存高清图片,并保存为高质量的pdf文件(图像不失真)
  • 51c~嵌入式~PLC~西门子~合集1