|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
2 U5 e4 z) w5 S/ c; m+ ]; x
两个vector 去重复,相交,合并的函数分享2 P1 s- f; L- f: {; L
) ^ G% a% t; g9 K4 Q. i; m1 l$ _# c[mw_shl_code=c,true]//容器vector中元素的去重
( y4 L% B# }9 lvector<int> unique_element_in_vector(vector<int> v){
5 A# s3 V6 b7 T7 Z vector<int>::iterator vector_iterator;
7 e' Z6 X8 m" e p sort(v.begin(),v.end());
! J% {, h( v! t) V, V) ] vector_iterator = unique(v.begin(),v.end());
% _: Y; U: N& ]! \" x) N( y r if(vector_iterator != v.end()){ - A' X2 k2 G5 f2 F% ^
v.erase(vector_iterator,v.end()); 2 C9 b, U8 [ J5 G5 W
} " Y& O8 K# `/ S: C
return v; 2 l4 z/ Y6 v/ a) y* H/ r
}
1 {( p5 n& s2 Y* c
& q+ k- p5 M/ z3 D5 c//两个vector求交集
5 t* s1 E( H3 ~vector<int> vectors_intersection(vector<int> v1,vector<int> v2){
8 Y+ v) M9 H6 ~- V( v( ] vector<int> v; 6 x* u, m; Z5 y" k# t
sort(v1.begin(),v1.end()); ! |$ m/ M& E4 k4 |! X6 w0 J
sort(v2.begin(),v2.end());
2 S3 J( |0 g1 v+ n& z set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
3 E3 r' B4 @2 T E return v; 2 x" X. R" r5 k c( X
}
3 O( l4 h/ @* g6 {) V; ]
+ i4 p% E B$ B9 ]9 U Q/ |//两个vector求并集
$ G6 t# h! {% Ovector<int> vectors_set_union(vector<int> v1,vector<int> v2){
" N1 z" ^/ y: M; z# o1 `# R vector<int> v; . |2 {' A0 v3 |2 O) S
sort(v1.begin(),v1.end()); 0 W9 ^, d ~4 q9 e5 e) c$ |$ E4 |
sort(v2.begin(),v2.end()); # z1 d8 F: U2 k5 g: W P
set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
N H4 ]8 u- f+ d return v;
, W+ E8 `+ T% J) Z# [" _2 w+ L}
3 N2 G+ N3 r2 M0 y% x7 _, `! Y5 u) T # m# Y' b& M4 ~, V+ `8 Q
//判断vector的某一元素是否存在
5 g" x1 c$ f3 F$ R* C; pbool is_element_in_vector(vector<int> v,int element){ 7 B, R1 F3 R5 ^5 k7 E! b' q* c. x
vector<int>::iterator it; ! E. n( b, o. Q% I, A5 t6 |' a
it=find(v.begin(),v.end(),element);
# P# u. z( [1 e, H; A: \9 | if (it!=v.end()){
3 U& F5 z4 v, H6 d return true;
& G1 {5 Q' X0 ]+ } }
+ R. K3 Q( } s. a4 Q else{
3 g( v7 h! V1 ?$ k. v$ h# U return false; . l; j5 w, E8 b2 ?6 q- D/ p \
} / n& Y; S b! n
}
# C1 w# r( M) B. U9 e F% ` [/mw_shl_code]+ @5 n9 _: U: _
|
|