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

std::set_symmetric_difference

std::set_symmetric_difference 是 C++ 标准库 头文件中的一个函数模板,用于计算两个已排序序列的对称差集。
什么是“对称差集”?

对称差集指的是:只出现在其中一个序列中,但不同时出现在两个序列中的元素的集合。

换句话说,就是:
(集合A - 集合B) ∪ (集合B - 集合A)
或者
(A ∪ B) - (A ∩ B)

#include <iostream>
#include <vector>
#include <algorithm>int main() {// 两个已排序的向量std::vector<int> vec1 = {1, 2, 3, 4, 5, 6};std::vector<int> vec2 = {4, 5, 6, 7, 8, 9};// 准备存放结果的向量,大小至少为两个输入向量大小之和std::vector<int> result(vec1.size() + vec2.size());// 计算对称差集auto it = std::set_symmetric_difference(vec1.begin(), vec1.end(),   // 第一个序列vec2.begin(), vec2.end(),   // 第二个序列result.begin()              // 结果存放位置);// it 指向结果序列的末尾,调整 result 的大小result.resize(std::distance(result.begin(), it));// 输出结果std::cout << "Symmetric Difference: ";for (int n : result) {std::cout << n << ' ';}std::cout << '\n';return 0;
}

结果:
Symmetric Difference: 1 2 3 7 8 9

http://www.dtcms.com/a/333664.html

相关文章:

  • 第七十三章:AI的“黑箱”迷局:推理链路中的断点与Tensor调试——让模型“交代一切”!
  • CCS双轴相位偏移光源 让浅凹痕无处遁形
  • 【Redis】超详细基础入门学习
  • 硬件开发_基于STM32单片机的热水壶系统
  • GitHub的使用教程
  • Upload 上传 vue2前端 + 后端
  • 【DDIA】第二部分:分布式数据
  • 【大模型微调系列-02】 深度学习与大模型初识
  • Java Lambda表达式是什么,怎么用
  • C语言笔记6:C高级 part1
  • Go从入门到精通系列学习路线规划
  • 区块链技术原理(13)-以太坊燃料费Gas
  • ITM(仪器跟踪宏单元)是什么?
  • Elasticsearch赋能规章制度智能检索:从海量文档到秒级响应
  • PyInstaller打包Python应用操作备忘
  • 学习嵌入式之硬件——I2C
  • Redis7学习--管道
  • P4069 [SDOI2016] 游戏 Solution
  • “社保新规”9月施行,内容、影响与时代意义
  • Ansible 学习笔记:变量事实管理、任务控制与文件部署
  • 分布式锁的具体实现和原理分析
  • 无线收发模块高效协同:EMS系统监控、交互、执行端同步通讯
  • SpringCloud学习
  • 现金流分析与预测提示词设计指南:从基础到复杂场景的实用框架
  • IO多路复用底层原理
  • Python中推导式和表达式
  • 基本电子元件:碳膜电阻器
  • 代码随想录二刷之“字符串”~GO
  • 集合车位租售、充电桩共享、二手市场、便民服务的家政服务平台,带源码
  • 数说故事发布全新AI产品:Social Research,免费洞察各行各业趋势,提升营销效率