数学集库/标题

The*_* do 4 c++ set

在什么库/标题(如果有的话)中定义了数学集?我需要设置像交集,联合等功能.

Bjö*_*lex 6

您可以使用std::set(<set>)作为集合,使用std::set_intersectionstd::set_union(<algorithm>).


Ben*_*oit 5

使用<set><algorithm>.

然后std提供std::set_union,std::set_intersection依此类推.

例:

#include <set>
#include <algorithm>

 ...
std::set<int> s1, s2;
for(int i = 0; i < 20; ++i)  s1.insert(i);
for(int i = 10; i < 30; ++i) s2.insert(i);
std::set<int> my_union, my_intersection;
std::set_union(s1.begin(), s1.end(), s2.begin(), s2.end(), std::inserter(my_union, my_union.begin()));
std::set_interesction(s1.begin(), s1.end(), s2.begin(), s2.end(), std::inserter(my_intersection, my_intersection.begin()));
Run Code Online (Sandbox Code Playgroud)