|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
5 v2 d! k I7 s m/ Q- Y两个vector 去重复,相交,合并的函数分享/ c% n( N9 m" N
5 L# i' l5 L8 M6 V[mw_shl_code=c,true]//容器vector中元素的去重 O% o, U0 R. L7 v9 ~; z
vector<int> unique_element_in_vector(vector<int> v){ 3 _! y6 j! h6 ?
vector<int>::iterator vector_iterator; 0 f, c& `# m g& c
sort(v.begin(),v.end());
) |) ?" e4 X6 v9 d8 I5 Y2 b vector_iterator = unique(v.begin(),v.end());
& X6 I+ }/ Y/ f1 B7 F. {; ] if(vector_iterator != v.end()){
6 C8 x, u5 j! M) R' {+ i v.erase(vector_iterator,v.end());
. l- k5 q: `+ v, J# u* _ }
4 |. h6 B$ q) i' Q0 G return v; % `) T V9 v( g3 d+ q( l
} R- R* p2 H' o' N
2 a C( r0 u) D- @7 r
//两个vector求交集 1 c/ C: y& ~; y# G! A/ z$ S' N
vector<int> vectors_intersection(vector<int> v1,vector<int> v2){
; v6 \3 l: f" t7 g# W vector<int> v; : L; R( O3 k4 [5 S4 j9 F
sort(v1.begin(),v1.end());
' Q" I) v, s" W- P7 G sort(v2.begin(),v2.end());
, s; |/ r. M* F set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集 1 ^4 h9 \# J4 U9 D8 R: p
return v; 8 V9 a4 g+ ~5 x! A0 I+ d; [8 X
} . `' o; B Z4 K# |5 D
( G- O4 s' z! @! G
//两个vector求并集
, F9 j( {2 e! w3 X7 n* `3 v! Fvector<int> vectors_set_union(vector<int> v1,vector<int> v2){
% ]1 E6 A2 k. m0 \" ^ vector<int> v;
5 T5 I7 k: Y C, n sort(v1.begin(),v1.end()); ( e% b& a: t2 r3 B$ l% j' X
sort(v2.begin(),v2.end());
& S$ m4 R$ r m: Y, Z$ w- o set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
|1 N7 o# D& o) V r return v;
) ?; j7 n8 |; H+ ]. E/ V0 _}
7 @) _" F: `' n' e! } * L$ x8 K' N( P5 M, k' r
//判断vector的某一元素是否存在 5 I- ?4 P4 E4 S F, N/ @/ E* V
bool is_element_in_vector(vector<int> v,int element){
6 A6 q8 B/ R3 \5 S6 R9 T vector<int>::iterator it; ; ~7 h `* W9 [+ I" d/ L
it=find(v.begin(),v.end(),element); 9 V% j$ R0 h9 D
if (it!=v.end()){ & c4 u! Q+ O$ K8 ~
return true; ' }$ r! W, v, c! M. |% ~" x9 |
}
2 Z) }1 O$ R6 M/ D2 T" }+ s else{
# k4 j! F) t' \) v" @ return false; 9 H7 }4 j! l6 f% z6 [( R: h9 | o3 |
} ) {/ O) C& l/ K2 T* |/ n& h2 l
}
7 x ^ o; D: w$ N9 R- }; G [/mw_shl_code]4 x9 }8 b+ @5 r; {% @' g; \& C
|
|