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

本文介绍了如何使用C/C++中的set_symmetric_difference函数来找到两个已排序vector之间的对称差异,即仅存在于其中一个vector的元素。通过示例代码展示了如何在不同场景下应用该函数,包括使用默认比较操作符和自定义比较函数。此外,还给出了在学生名单管理和查找未同时参加两门课程的学生等实际问题中的应用。
摘要由CSDN通过智能技术生成

核心知识: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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值