stl 中 容器 set 类基础运算 交集 并集 差集 (2)
2013-06-17 09:53
405 查看
以下的代码是对集合的交集 并集 差集 运算测试:
// stlset2.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <set>
#include <algorithm>
#include <iostream>
#include <iterator>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
set<int> myset1;
set<int> myset2;
set<int> myset3;
set<int> myset4;
set<int> myset5;
set<int> myset6;
printf("myset1: \n");
//插入 0 1 2 3 4 5 6 7 8 9
pair<set<int>::iterator, bool> insert_pair;
for(int i=0; i<10; i++)
{
insert_pair = myset1.insert(i);
}
copy(myset1.begin(), myset1.end(), ostream_iterator<int>(cout, " "));
printf("\n");
//插入5 6 7 8 9 10 11 12 13 14
for(int j=5; j<15;j++)
{
insert_pair = myset2.insert(j);
}
printf("myset2: \n");
copy(myset2.begin(), myset2.end(), ostream_iterator<int>(cout, " "));
printf("\n");
printf("union result myset3: \n");
//计算集合的并集运算
set_union(myset1.begin(), myset1.end(), myset2.begin(), myset2.end(), inserter(myset3, myset3.begin()));
copy(myset3.begin(), myset3.end(), ostream_iterator<int>(cout, " "));
printf("\n");
printf("intersection result myset4: \n");
//计算集合的交集集运算
set_intersection(myset1.begin(), myset1.end(), myset2.begin(), myset2.end(), inserter(myset4, myset4.begin()));
copy(myset4.begin(), myset4.end(), ostream_iterator<int>(cout, " "));
printf("\n");
printf("difference result myset5: \n");
//计算集合的交集集运算
set_difference(myset1.begin(), myset1.end(), myset2.begin(), myset2.end(), inserter(myset5, myset5.begin()));
copy(myset5.begin(), myset5.end(), ostream_iterator<int>(cout, " "));
printf("\n");
printf("symmetric_difference result myset6: \n");
//计算集合的交集集运算
set_symmetric_difference(myset1.begin(), myset1.end(), myset2.begin(), myset2.end(), inserter(myset6, myset6.begin()));
copy(myset6.begin(), myset6.end(), ostream_iterator<int>(cout, " "));
getchar();
return 0;
}
// stlset2.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <set>
#include <algorithm>
#include <iostream>
#include <iterator>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
set<int> myset1;
set<int> myset2;
set<int> myset3;
set<int> myset4;
set<int> myset5;
set<int> myset6;
printf("myset1: \n");
//插入 0 1 2 3 4 5 6 7 8 9
pair<set<int>::iterator, bool> insert_pair;
for(int i=0; i<10; i++)
{
insert_pair = myset1.insert(i);
}
copy(myset1.begin(), myset1.end(), ostream_iterator<int>(cout, " "));
printf("\n");
//插入5 6 7 8 9 10 11 12 13 14
for(int j=5; j<15;j++)
{
insert_pair = myset2.insert(j);
}
printf("myset2: \n");
copy(myset2.begin(), myset2.end(), ostream_iterator<int>(cout, " "));
printf("\n");
printf("union result myset3: \n");
//计算集合的并集运算
set_union(myset1.begin(), myset1.end(), myset2.begin(), myset2.end(), inserter(myset3, myset3.begin()));
copy(myset3.begin(), myset3.end(), ostream_iterator<int>(cout, " "));
printf("\n");
printf("intersection result myset4: \n");
//计算集合的交集集运算
set_intersection(myset1.begin(), myset1.end(), myset2.begin(), myset2.end(), inserter(myset4, myset4.begin()));
copy(myset4.begin(), myset4.end(), ostream_iterator<int>(cout, " "));
printf("\n");
printf("difference result myset5: \n");
//计算集合的交集集运算
set_difference(myset1.begin(), myset1.end(), myset2.begin(), myset2.end(), inserter(myset5, myset5.begin()));
copy(myset5.begin(), myset5.end(), ostream_iterator<int>(cout, " "));
printf("\n");
printf("symmetric_difference result myset6: \n");
//计算集合的交集集运算
set_symmetric_difference(myset1.begin(), myset1.end(), myset2.begin(), myset2.end(), inserter(myset6, myset6.begin()));
copy(myset6.begin(), myset6.end(), ostream_iterator<int>(cout, " "));
getchar();
return 0;
}
相关文章推荐
- python set集合运算(交集,并集,差集,对称差集)
- STL容器[28]交集、并集、差集
- python set集合运算(交集,并集,差集,对称差集)
- STL容器[28]交集、并集、差集
- JavaScript Set集合的并集,交集,差集
- SQL集合运算:差集、交集、并集
- javaSet集合的并集、差集、交集
- STL算法-交集,并集,差集,对称差
- STL算法-交集,并集,差集,对称差
- STL之交集、并集、差集
- 使用Set求两个数组的并集|| 交集||差集
- List之Union(),Intersect(),Except() 即并集,交集,差集运算。
- 构建一个类,对集合进行运算,包括求集合的交集,并集和差集。
- Oracle 交集,差集,并集运算的学习
- List之Union(),Intersect(),Except() 即并集,交集,差集运算。
- 【Oracle】Oracle交集、并集、差集的运算
- SQL集合运算:差集、交集、并集
- list set 求交集、差集、并集
- SQL集合运算:差集、交集、并集
- STL中的set集合容器进行集合运算:并、交、差实例