C/C++编程笔记:教你一招丨求两个 vector 中不同的所有元素

核心知识:set_symmetric_difference

两个排序范围
两组中的对称性差异是由一组中的元素而不是另一组中的元素形成的。在每个范围的等效元素中,被丢弃的元素是按调用之前的先后顺序出现的元素。对于已复制的元素,还将保留现有顺序。
对于第一个版本,使用operator <进行比较,而对于第二个版本,使用comp进行比较。如果(!(a <b)&&!(b <a))或if(!comp(a,b)&&!comp(b,a)),则认为两个元素a和b是等效的。
范围内的元素应已订购。
1.使用默认运算符<:
句法 :

代码示例:

输出:
第一个数组包含:5 10 15 20 25
第二个数组包含:50 40 30 20 10
对称差有6个元素: 5 15 25 30 40 50
2.使用自定义功能:
句法:

代码示例:


输出:
第一个数组包含:5 10 15 20 25
第二个数组包含:50 40 30 20 10
对称差有6个元素: 5 15 25 30 40 50
可能的应用:用于查找一个容器中存在的元素,而不是其他容器中存在的元素。
1.用于查找未同时参加这两个课程的学生列表。这两个班的学生都在列表中。
代码示例:

.输出 :
参加第一堂课的学生是:Samir Manoj Pranav Rajesh
参加第二堂课的学生是:Samir Junaid Manoj Pankaj Arpit
不参加这两个课程的学生名单:Junaid Pankaj Arpit Pranav Rajesh
当然,它也可以用于从两个列表中查找两个列表中都不存在的数字。
文章来自丨极客学院
每天学点小知识,希望对你有帮助~
另外如果你想更好的提升你的编程能力,学好C语言C++编程!弯道超车,快人一步!笔者这里或许可以帮到你~

UP在主页上传了一些学习C/C++编程的视频教程,有兴趣或者正在学习的小伙伴一定要去看一看哦!会对你有帮助的~
分享(源码、项目实战视频、项目笔记,基础入门教程)
欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!
编程学习书籍分享:

编程学习视频分享:
