|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
# P# Y3 a0 ?7 w5 {
两个vector 去重复,相交,合并的函数分享
# s$ a1 w$ q/ B* C* W6 C* g; q0 D5 l/ j
[mw_shl_code=c,true]//容器vector中元素的去重 . }0 C9 ~, C* m) ]) ^; b& U
vector<int> unique_element_in_vector(vector<int> v){
1 @$ v7 S2 H8 v, k3 b4 k vector<int>::iterator vector_iterator;
3 |- j, z& g# @4 [" y) S2 x" i sort(v.begin(),v.end()); ; W9 @' v( {& n2 _% K* @6 R/ Y
vector_iterator = unique(v.begin(),v.end());
* r- B$ Y8 d* _; w8 X' _, \! \ if(vector_iterator != v.end()){ , E3 X7 B8 i2 Z1 X9 y' [- @5 L
v.erase(vector_iterator,v.end()); % D. w3 x% F. m+ p1 `: t: D/ a
}
' o1 m8 a# [1 |7 B/ P, b return v;
7 q! p% h4 Y- t* D}
* W& g) U1 ~* ]: F2 o) ?( ^0 ]+ w
& ^7 F: ^0 t4 d//两个vector求交集
1 h6 I+ l9 w& a* c6 wvector<int> vectors_intersection(vector<int> v1,vector<int> v2){ 7 p0 R* m3 f3 X+ Q
vector<int> v;
% t6 ~2 h, {* P4 [ sort(v1.begin(),v1.end()); , X5 M" t0 w* @0 Z, I4 h' S
sort(v2.begin(),v2.end()); 2 b, Q# Z% R4 E* X; E, R% q. v
set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
- ~# j/ x8 u) X return v; 3 ^4 r1 I; I' x, p! M4 \/ v& w9 C
}
+ A6 G6 f/ h8 G5 _ ) y, B; D2 c$ t
//两个vector求并集
5 j/ \4 k1 _7 N m* mvector<int> vectors_set_union(vector<int> v1,vector<int> v2){
8 Y |3 e' w* Q" B; M) n1 q vector<int> v;
0 c2 i9 ]7 A B2 t' j! ] sort(v1.begin(),v1.end());
% |9 }& F) u+ |* j sort(v2.begin(),v2.end()); & R) Q& r, c& A+ G4 }
set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
- e9 u& w( _6 ~- I: W return v;
4 u! [8 s; J; z$ K# X/ k2 c}
7 `3 l3 C3 F( T# A 9 Z' S0 b F7 m9 x: X. `
//判断vector的某一元素是否存在
2 q! d: P8 x/ }2 H; w" Fbool is_element_in_vector(vector<int> v,int element){ + w5 t/ B3 k5 d# s
vector<int>::iterator it;
! _# s" k) L; N- }5 M/ U it=find(v.begin(),v.end(),element);
1 u9 q* Q4 l1 m0 s1 A if (it!=v.end()){
6 T& u+ o1 K" ~. I7 k4 c `# v3 | return true;
) X$ o' M8 I( r" X }
0 |! P7 p5 b" D& k* d1 B$ O else{ : ~7 L' N& E+ b" p3 {
return false; + m# w7 |3 x6 F! v8 ~" F# k9 j: o- o
}
+ d9 N/ h- B$ Z, z( { X} - }: z) u. o4 b7 H# V# n9 K! q+ S
[/mw_shl_code]
9 _/ z1 i! W! Z" L |
|