C++ STL set_union的用法

set_union是将已序的源区间[source1Beg,sourceEnd)和[source2Beg,source2End)内的元素合并,得到“以destBeg起始”的目标区间。

同时出现在两个源区间内的元素,在并集区间中将只出现一次。


#include "algostuff.hpp"
#include
#include
using namespace std;


int main(){
list coll_list;
set coll_set;
INSERT_ELEMENTS(coll_list,1,2);
INSERT_ELEMENTS(coll_list,2,3);
INSERT_ELEMENTS(coll_list,6,7);
INSERT_ELEMENTS(coll_list,7,9);


INSERT_ELEMENTS(coll_set,1,2);
INSERT_ELEMENTS(coll_set,2,3);
INSERT_ELEMENTS(coll_set,6,7);
INSERT_ELEMENTS(coll_set,7,9);
INSERT_ELEMENTS(coll_set,10,12);


PRINT_ELEMENTS(coll_list,"coll_list:");
cout<PRINT_ELEMENTS(coll_set,"coll_set:");
cout<

set_union(coll_list.begin(),coll_list.end(),coll_set.begin(),coll_set.end(),ostream_iterator(cout," "));


return 0;
}


编译后输出:

coll_list:1 2 2 3 6 7 7 8 9 
coll_set:1 2 3 6 7 8 9 10 11 12 
1 2 2 3 6 7 7 8 9 10 11 12 

你可能感兴趣的:(C++ STL set_union的用法)