|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
# W) S+ w' M( f3 Q" m" P两个vector 去重复,相交,合并的函数分享
4 V5 O' Q# f$ y6 x+ [; j- @+ o
' _- |; L1 Q, R, f. P* n[mw_shl_code=c,true]//容器vector中元素的去重
o5 A8 W2 D2 p& l" kvector<int> unique_element_in_vector(vector<int> v){ $ A, ^5 F* R! u; |7 w. T
vector<int>::iterator vector_iterator;
* O% c$ S* \- r+ \" v sort(v.begin(),v.end());
4 [4 E3 j( d2 C, I4 a$ _ vector_iterator = unique(v.begin(),v.end()); . |) Y3 ?5 ]8 R6 t2 Q4 d: b- V M
if(vector_iterator != v.end()){
0 F" H+ U% R9 y# m. s1 D v.erase(vector_iterator,v.end());
1 _' v% U. Q; |2 E" X) z }
# J/ {! c: ~ b) T! ? return v; : {9 }& q. m, A+ T9 ^
}
$ y* ~+ O3 D, f) i6 n1 u
- q5 J( t% a+ q$ S. i( t4 ]4 A1 A/ n//两个vector求交集 . C$ C7 g& w- h% `( h
vector<int> vectors_intersection(vector<int> v1,vector<int> v2){
`& w3 } {( e" f1 o, L% R vector<int> v;
" H4 N5 |$ w* [4 q# g o2 e sort(v1.begin(),v1.end()); % X' w3 p, g8 Q4 S
sort(v2.begin(),v2.end());
# A: ~' U: }3 C2 G0 ]' t b set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集 ! f0 W% a" Y% d: o- \/ ]
return v;
5 ^8 U6 |. y2 q+ P} 7 ~) N4 M' O L0 W6 _
# g. C. C8 {# E) M//两个vector求并集 ) S2 c7 W/ v5 f, @5 F
vector<int> vectors_set_union(vector<int> v1,vector<int> v2){
9 |' M" p k' n$ Q0 {7 m8 s: X vector<int> v; 9 F3 l( e$ H6 J& i
sort(v1.begin(),v1.end());
0 {2 E G& d( `4 u sort(v2.begin(),v2.end());
. v1 F7 o* |* y- @ set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集 . X5 S# f( f! |5 C* e
return v;
0 [/ s$ B, Z& K% d3 V} : Q1 r4 D: i' g4 r6 M8 c6 Q3 b" [
& u6 T6 P8 E- ?- S( x; b) H7 ?* Q
//判断vector的某一元素是否存在
! O+ h1 y2 g) p& L- ebool is_element_in_vector(vector<int> v,int element){
* @* C( ]! |' L( \7 G& i# J vector<int>::iterator it;
! m! |* i( w( h! Y1 n$ Q it=find(v.begin(),v.end(),element);
9 P: B k2 Q* Z" G if (it!=v.end()){ ! w4 J/ h# C, e% Z3 N
return true;
) t, M! H+ T( p }
3 Y' P$ o& u4 o else{ ) P+ _: B8 C, ?. T; o5 S
return false; 0 ]& K7 P% e0 Y) d
}
1 _" i' ^2 g6 s( R' W1 M9 z5 z}
- X! w/ B* G+ k [/mw_shl_code]6 [( Q3 Q/ u J3 T! V [. o
|
|