|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
/ T8 `1 d2 x. ]7 \2 p
两个vector 去重复,相交,合并的函数分享
0 X7 n: V1 G* r, p$ f7 ^8 ?5 ^8 g% J0 V d1 ~3 F
[mw_shl_code=c,true]//容器vector中元素的去重
# Z; I3 K. E" L* Zvector<int> unique_element_in_vector(vector<int> v){ $ c9 p {* M6 G, l5 Z# _
vector<int>::iterator vector_iterator;
3 k+ H" ?. [0 { sort(v.begin(),v.end()); 1 S B! E1 t. G8 M4 U* m0 F+ d
vector_iterator = unique(v.begin(),v.end());
+ n, X L7 s! P) F" | if(vector_iterator != v.end()){
5 O9 ?' Q) |8 U: U v.erase(vector_iterator,v.end());
6 G" P& W" ] A* z3 U5 H# t }
, Y7 @. _0 G' V8 H* c* s6 d2 p return v;
+ F3 ]0 y, B2 ~9 [: s* V6 _} - _% Z! r% X* g" s: T( u
3 E& K+ R# \3 P; ]' t8 u; Q8 x//两个vector求交集
- ]+ M) W. C X% S0 jvector<int> vectors_intersection(vector<int> v1,vector<int> v2){
* j" U- ?7 D6 M6 R# m vector<int> v; + q5 S9 J- s% s. m: l. f
sort(v1.begin(),v1.end()); 6 C) U N' t2 m& W; L
sort(v2.begin(),v2.end()); 1 ^' K1 B) P: t
set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集 6 @( V( o: c2 j4 H0 R
return v;
$ _3 U! e' ]8 l4 E# i- q8 y} 6 S( D# j; }# V% W6 S
6 s3 ]* P. q! |. O6 F% O, y. l//两个vector求并集
7 r# o$ |- w. ]6 ]$ _, fvector<int> vectors_set_union(vector<int> v1,vector<int> v2){ w4 s% p7 `1 L7 U8 n: l R- L3 t
vector<int> v; 3 p* R" X4 W+ t. c
sort(v1.begin(),v1.end()); , U) k" n( n2 e# w$ r8 O
sort(v2.begin(),v2.end()); $ }) e4 Z# ^$ t+ N; H
set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
% @$ b( d2 E6 i: x1 w) A9 B return v;
/ m* y; |% K! p}
( ]' d a0 A% p$ R: E! L 8 r8 k' H- S' u
//判断vector的某一元素是否存在
2 x6 y8 S6 q: `! Qbool is_element_in_vector(vector<int> v,int element){ 7 K& R0 J7 ^* R' {$ j. U# Z6 V
vector<int>::iterator it; : e, Z6 ? y, v& j8 J1 Q
it=find(v.begin(),v.end(),element);
6 [) T0 n* S7 B8 V% w2 B if (it!=v.end()){ 1 Y+ H# ^3 k% \$ u9 D- a r
return true; $ p' z, L" P. R$ Z+ x
} . N: J ?; w @5 G% S
else{ * O+ n9 u2 f @# }2 P
return false; - Y6 }1 M" m: e* g1 ~
}
0 _7 K8 Y2 `" r% u} ' s/ k" V& K @% O) X( ~
[/mw_shl_code]
5 p3 Z2 |0 ~' o0 L5 d7 a- L% V |
|