|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
- h$ g# J# i. G
两个vector 去重复,相交,合并的函数分享# l0 c4 f5 p6 ]0 j, Y
' x0 i" Z" a# A& b% M+ r- b) i[mw_shl_code=c,true]//容器vector中元素的去重
; Q; G/ s/ T0 k0 _vector<int> unique_element_in_vector(vector<int> v){ 4 e& x7 A- O- D: ?& f- m% A" c1 G
vector<int>::iterator vector_iterator;
) m1 z2 h' G& T. `9 A sort(v.begin(),v.end()); 9 r/ G# Y3 ]0 U5 x3 w
vector_iterator = unique(v.begin(),v.end());
4 z7 s) [! t( t if(vector_iterator != v.end()){
' ?' A* ^& O$ d7 B+ [+ V9 S" X$ V v.erase(vector_iterator,v.end());
4 z1 B* O& a) m" p } 6 a$ N# L& c( D
return v; # u$ Y: B, i8 g8 k& W
} / C- E0 n4 O2 X/ V, P
! y- T# O! X2 {+ y//两个vector求交集
" P9 H z% F+ W; Q9 h, C1 Pvector<int> vectors_intersection(vector<int> v1,vector<int> v2){ # w: h' U1 z% l$ h" k* ]
vector<int> v; , _( l- ~2 j+ r0 d1 b y
sort(v1.begin(),v1.end()); " q% C X- k* Y- v* I' [1 g, ?) S
sort(v2.begin(),v2.end());
8 Z0 F3 I( N. E2 U set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集 / L" f9 w) _+ J, l, R
return v;
# H% j2 W( X6 ?! v, E" C0 F}
2 I% @0 f8 U# Y8 w + O- \/ ?# p( B$ U. w0 H
//两个vector求并集
; G9 k4 l, u$ i/ [) O0 B/ m2 g4 Evector<int> vectors_set_union(vector<int> v1,vector<int> v2){
0 O7 o5 v3 L4 A vector<int> v;
6 z4 n5 `. k, z7 F; j6 M8 c sort(v1.begin(),v1.end()); 4 M% U2 i* |2 P' ?) ?) C& Z
sort(v2.begin(),v2.end()); ' Y. Z4 Z" ^* Y# G( I0 z2 d
set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
$ T- b, w; v0 W# T' n; r$ ]9 L6 F! g return v;
H0 m: [: @2 v- [ d' R2 e}
- K/ S% L" ?5 g& ^' N $ N9 d3 U% q4 b$ T( Y
//判断vector的某一元素是否存在 9 b. w. f8 w% ]' N# p9 w
bool is_element_in_vector(vector<int> v,int element){ $ x: e+ v( Z7 S/ O; G: K) s
vector<int>::iterator it; * A; f: O: B' u _0 q
it=find(v.begin(),v.end(),element);
; g1 G3 s" o" i- C0 @ if (it!=v.end()){
# Z6 H3 t) X; x+ l return true;
! `! [) b* ?$ F8 y } 5 D' @% P" u) D7 I( L& s
else{
8 M& ]5 z& h: X return false;
7 ~- Y6 I) r; `, m$ _ }
; c9 Z3 h. ?- U; O' b: \4 r}
# L. W" S* x. P& u0 G3 P( } [/mw_shl_code]
9 [: A+ D1 ^) O: }' z |
|