c++求两个表的并集和交集
时间: 2023-12-24 19:17:44 浏览: 83
集合操作代码
假设两个表分别为 A 和 B,其中每个表都没有重复元素,我们可以使用 C++ 中的 set 容器来求解它们的并集和交集。
并集的求解方法如下:
```c++
#include <set>
#include <vector>
std::set<int> A = {1, 2, 3, 4};
std::set<int> B = {3, 4, 5, 6};
// 求并集
std::set<int> unionSet;
std::set_union(A.begin(), A.end(), B.begin(), B.end(), std::inserter(unionSet, unionSet.begin()));
// 将并集转为 vector 输出
std::vector<int> output(unionSet.begin(), unionSet.end());
```
交集的求解方法如下:
```c++
#include <set>
#include <vector>
std::set<int> A = {1, 2, 3, 4};
std::set<int> B = {3, 4, 5, 6};
// 求交集
std::set<int> intersectionSet;
std::set_intersection(A.begin(), A.end(), B.begin(), B.end(), std::inserter(intersectionSet, intersectionSet.begin()));
// 将交集转为 vector 输出
std::vector<int> output(intersectionSet.begin(), intersectionSet.end());
```
以上代码示例中,我们将 set 容器中的元素转为 vector 输出,方便查看结果。
阅读全文