|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
+ j) F. ?# L/ Q8 B# h% R! O: @两个vector 去重复,相交,合并的函数分享; f X6 z& U0 |4 {/ e9 g$ H' @
) f8 F- u" q5 v! V: F5 d
[mw_shl_code=c,true]//容器vector中元素的去重 , B2 Y; m3 S5 V8 O% n+ \
vector<int> unique_element_in_vector(vector<int> v){ ' I8 z3 }% P+ {& q! H, t1 v: [
vector<int>::iterator vector_iterator; ! x- f$ V. {' Q
sort(v.begin(),v.end()); , Q7 {9 a/ \: |8 ^% h8 v4 O
vector_iterator = unique(v.begin(),v.end());
/ ^# t+ w8 Z# I+ X if(vector_iterator != v.end()){ 0 b J7 V% y6 C$ F: J
v.erase(vector_iterator,v.end()); $ I, _1 l L# B8 F& m x; R! q
}
8 y/ m/ t2 p. K2 w return v;
4 F9 y0 q+ Y% ^: |# E5 x} ) D: Q8 m. h% r) u0 X* C
0 a6 I- Q2 W' S
//两个vector求交集
, b2 h8 Y: C; h* Xvector<int> vectors_intersection(vector<int> v1,vector<int> v2){ & |2 L+ n7 V; u0 T. T
vector<int> v;
8 R8 X3 W2 T) R6 t9 M- w# [3 M sort(v1.begin(),v1.end()); ) D9 E2 @' H9 N3 A+ N; ?# R' X
sort(v2.begin(),v2.end());
, ^- O! z: d2 F" c' h# @* ]2 R set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
( T1 T" K! v# x6 F2 I return v;
5 O& q* x3 v- V {: @} " P( \8 o3 g* f. X
2 ^6 _, c9 k" i//两个vector求并集
# V$ o1 v' g3 C, Kvector<int> vectors_set_union(vector<int> v1,vector<int> v2){ + D; s/ L* f3 j
vector<int> v;
! n+ s8 N; S; `6 X+ G B sort(v1.begin(),v1.end());
; R( M( a+ K; L" ]& ] sort(v2.begin(),v2.end()); ! u2 k% b' r, F$ s* c. m
set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集 8 N, e- a* Y$ ]; j
return v;
7 P- O6 P | t: d} % q& B; _& ?6 h
5 a4 i$ d. c" I/ Y) }//判断vector的某一元素是否存在 : `% M! Z& P) D* k4 z
bool is_element_in_vector(vector<int> v,int element){ & F% w3 {7 z4 l9 W. a+ P8 ?7 N
vector<int>::iterator it; & J7 C% T" J2 G9 P5 ?5 g/ ?% @; V
it=find(v.begin(),v.end(),element); % {7 D4 p5 x( G$ r' b' q: G
if (it!=v.end()){ 1 K1 g* U4 ?8 x* C; f& p! f/ g# \
return true; ) h+ s1 F7 x/ F2 U0 v
}
: [" {2 J! ^% h W6 S( l. o else{
/ g- L& N+ Y, u4 [7 e return false; ) h) s1 o# j. ] l8 w1 Q$ N, y
}
' T0 s( E, ]8 Z}
0 c* H0 ]' x. G' q' H9 n2 N [/mw_shl_code]
: q2 q2 e* j1 x$ i# p9 e |
|