[C++STL]常用集合算法
代码如下:
#include <iostream>
#include <vector>
#include <numeric>
#include <algorithm>
using namespace std;class myPrint
{public:void operator()(int val){cout << val << " ";}
};void test01()
{vector<int>v1;vector<int>v2;for (int i = 0; i < 10; i++){v1.push_back(i);v2.push_back(i + 5);}for_each(v1.begin(), v1.end(), myPrint());cout << endl;for_each(v2.begin(), v2.end(), myPrint());cout << endl;vector<int >v3;v3.resize(min(v1.size(),v2.size()));vector<int>::iterator itEnd = set_intersection(v1.begin(), v1.end(), v2.begin(), v2.end(), v3.begin());for_each(v3.begin(), itEnd, myPrint());cout << endl;
}int main()
{test01();return 0;
}
测试结果:
总结:
代码如下:
#include <iostream>
#include <vector>
#include <numeric>
#include <algorithm>
using namespace std;class myPrint
{public:void operator()(int val){cout << val << " ";}
};void test01()
{vector<int>v1;vector<int>v2;for (int i = 0; i < 10; i++){v1.push_back(i);v2.push_back(i + 5);}for_each(v1.begin(), v1.end(), myPrint());cout << endl;for_each(v2.begin(), v2.end(), myPrint());cout << endl;vector<int >v3;v3.resize(v1.size() + v2.size());vector<int>::iterator itEnd = set_union(v1.begin(), v1.end(), v2.begin(), v2.end(), v3.begin());for_each(v3.begin(), itEnd, myPrint());cout << endl;
}int main()
{test01();return 0;
}
测试结果:
总结:
代码如下:
#include <iostream>
#include <vector>
#include <numeric>
#include <algorithm>
using namespace std;class myPrint
{public:void operator()(int val){cout << val << " ";}
};void test01()
{vector<int>v1;vector<int>v2;for (int i = 0; i < 10; i++){v1.push_back(i);v2.push_back(i + 5);}for_each(v1.begin(), v1.end(), myPrint());cout << endl;for_each(v2.begin(), v2.end(), myPrint());cout << endl;vector<int >v3;v3.resize(max(v1.size() , v2.size()));//v1和v2的差集vector<int>::iterator itEnd = set_difference(v1.begin(), v1.end(), v2.begin(), v2.end(), v3.begin());for_each(v3.begin(), itEnd, myPrint());cout << endl;cout << "---------------------------------------" << endl;//v2和v1的差集vector<int>::iterator itEnd02 = set_difference(v2.begin(), v2.end(), v1.begin(), v1.end(), v3.begin());for_each(v3.begin(), itEnd02, myPrint());cout << endl;}int main()
{test01();return 0;
}
测试结果:
总结:
[C++STL]常用集合算法相关推荐
- C++STL常用集合算法
C++STL常用集合算法 学习目标 算法简介 set_intersection 功能描述 函数原型 示例 总结 set_union 功能描述 函数原型 示例 总结 set_difference 功能描 ...
- 第九层(16):STL终章——常用集合算法
文章目录 前情回顾 常用集合算法 set_intersection set_union set_difference 最后一座石碑倒下,爬塔结束 一点废话
- C++ STL 常用查找算法
C++ STL 常用查找算法 adjacent_find() 在iterator对标识元素范围内,查找一对相邻重复元素,找到则返回指向这对元素的第一个元素的迭代器.否则返回past-the-end. ...
- C++ STL 常用遍历算法
C++ STL 常用遍历算法 STL的容器算法迭代器的设计理念 1) STL的容器通过类模板技术,实现数据类型和容器模型的分离 2) STL的迭代器技术实现了遍历容器的统一方法:也为STL的算法提供 ...
- C++STL常用排序算法
C++STL常用排序算法 学习目标 算法简介 sort 功能描述 函数原型 示例 总结 random_shuffle 功能描述 函数原型 示例 总结 merge 功能描述 函数原型 示例 总结 rev ...
- C++STL常用查找算法
C++STL常用查找算法 学习目标 算法简介 find 功能描述 函数原型 示例 总结 find_if 功能描述 函数原型 示例 总结 adjacent_find 功能描述 函数原型 示例 总结 bi ...
- C++STL常用遍历算法
C++STL常用遍历算法 概述 学习目标 算法简介 for_each 功能描述 函数原型 示例 总结 transform 功能描述 函数原型 示例 总结 概述 算法主要是由头文件<algorit ...
- C++ 常用集合算法
#define _CRT_SECURE_NO_WARNINGS #include<iostream> #include <algorithm> #include <vec ...
- 开课吧:C++STL常用remove算法有哪些?
C++标准库提供了大量可以用来对容器及其他序列进行算法操作的函数.这些组件可以是函数或者函数模板,大部分由头文件 提供.以下四个remove相关的函数就包含在头文件algorithm中. 四个remo ...
最新文章
- 【Linux】Linux与Windows的部分不同
- 谷歌chrome浏览器的源码分析(五)
- 后处理编辑修改_NX后处理打开报错处理方法
- android 信息添加附件功能,Android实现带附件的邮件发送功能
- 更改整个目录文件的所有权限
- 代码段编辑器SnippetEditor 2.1
- AI大时代下,零基础进入人工智能领域该如何学习?
- 全球首发!惯性导航导论(剑桥大学)第一部分
- Java 压缩解压缩 第三方组件,推荐一个强大的Java开发工具类库!
- RocketMQ报错:MQClientException:no route info of this topic的解决
- 解决本地工具无法连接服务器上的mysql的问题
- 系统服务器ping偶尔超时,云服务器ping超时原因
- php的redis安装配置,Redis 的安装配置介绍_php
- 【渝粤题库】陕西师范大学200061语言学概论作业(高起本、专升本)
- easyexcel 导出数据锁定某个单元格
- 简述计算机硬件,简述计算机硬件的组成部分
- 野指针,数组指针,指针数组
- 图片 EXIF 信息中旋转参数 Orientation 的理解
- golang dlv linux下安装
- 解决fork: retry: 资源暂时不可用
热门文章
- 【ArcGIS风暴】什么是点云?什么是Las数据集?一篇文章告诉你点云数据的奥秘
- 【MATLAB统计分析与应用100例】案例012:matlab读取Excel数据,调用robustfit函数作稳健回归
- 【ArcGIS风暴】数字化实验:数据采集与编辑完整操作流程
- C语言试题六十三之请编写函数fun:将s所指字符串中ascii值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。
- linux c之出现warning: implicit declaration of function ‘exit’ [-Wimplicit-function-declaration]这个问题
- Android之ActivityManage长用方法总结
- sql order by,desc和limit使用(mysql)
- mysql mgr简介_MySQL Group Replication(MGR)使用简介与注意事项
- 年月跨度_建筑结构丨国内跨度最大的张弦桁架工程——合肥滨湖国际会展中心二期首榀桁架滑移成功...
- 一图看懂圆柱侧面与螺旋线关系,你懂了吗?