|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
- O3 f+ d2 o1 ~
两个vector 去重复,相交,合并的函数分享/ f1 o1 E ]- l5 h8 [5 M
, d! e+ q: e+ Q) `[mw_shl_code=c,true]//容器vector中元素的去重 7 l; K- S4 c$ ^5 [ Y5 X4 S! E4 x
vector<int> unique_element_in_vector(vector<int> v){ - l# y H* q. j
vector<int>::iterator vector_iterator; . h, v7 ]) l9 V: H) c
sort(v.begin(),v.end());
# q- h& @( H @; A( G vector_iterator = unique(v.begin(),v.end()); $ X5 r" S4 G* O* ]
if(vector_iterator != v.end()){
" q+ h& D/ h7 v- w: X6 D" G, P v.erase(vector_iterator,v.end()); 5 [- O$ J- T0 l
}
3 c) j2 \, Q9 ~9 V3 M: ? return v;
" j3 @' U5 N; ^1 Q! M} 7 V5 f( G! F+ E9 t+ C# T
9 X5 O/ a/ A1 v//两个vector求交集
: }6 j$ B0 |) O' a. ^/ ^vector<int> vectors_intersection(vector<int> v1,vector<int> v2){
- }) e4 t2 V4 _( C# F/ ~ vector<int> v;
8 I' f/ V! p) I% S sort(v1.begin(),v1.end());
/ a, Q- w7 W! s# T* Y4 a: F sort(v2.begin(),v2.end()); % ?/ T0 F% f# A0 i
set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集 , H2 ~6 R8 [" [( e
return v; , J" O0 f9 |- C. n' N: P
}
' P0 [) ]! u' [7 J
4 j% d n4 k0 a//两个vector求并集
6 y1 Z8 c4 ?# f$ n& qvector<int> vectors_set_union(vector<int> v1,vector<int> v2){ & R+ r5 }. K. a
vector<int> v;
% a9 e; K4 {, s! s& | sort(v1.begin(),v1.end());
6 F: a; H1 l1 n; x! q sort(v2.begin(),v2.end()); @( |$ z( C+ t$ n: A$ e$ U: ?1 S) c
set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
4 _& I% ]. U$ D4 o# B- P9 s return v; + }. x: l6 d9 ], c! G- H) b
} 3 R2 |/ Y n/ ]. o6 E5 r
9 I ]6 V' V+ `//判断vector的某一元素是否存在 , k1 E# t) g: G L2 J: J0 F
bool is_element_in_vector(vector<int> v,int element){
( M+ x* r! ?) M! `" Q$ L- d vector<int>::iterator it;
' a: |# j! c) h( z, F+ j$ j6 V it=find(v.begin(),v.end(),element);
$ r3 Y% f" {; ~8 d# {) W if (it!=v.end()){
+ I* R( v5 Y6 `, R2 |; S9 V return true; 1 s! ]( h* Q* ^) B$ g; g, j
}
7 \9 o4 v3 L7 F% {# w else{ ~8 d% N! F: S. }
return false;
& m1 g% f8 q" J: p } 3 |: ^% W/ x7 ^5 w0 Q" b
}
% C3 s4 B1 N7 t: e, R7 y2 V8 H1 H [/mw_shl_code]
6 A ~1 Y+ s d3 y6 x1 v |
|