|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
# v/ {* _- p8 o& V
两个vector 去重复,相交,合并的函数分享
( Z6 F' ]- c4 v" |
J1 W8 s8 x. U, u" B# O. w[mw_shl_code=c,true]//容器vector中元素的去重
$ @+ z7 f7 D7 f- u4 Wvector<int> unique_element_in_vector(vector<int> v){
' j5 d9 [. l) j3 ~* T vector<int>::iterator vector_iterator; 5 I0 D/ W& Y9 p4 Y6 r, P6 A
sort(v.begin(),v.end()); 3 K( i3 L, |4 r
vector_iterator = unique(v.begin(),v.end()); $ h' D% Y6 X# @. y3 n
if(vector_iterator != v.end()){
/ h, d: @' Q2 f; Q v.erase(vector_iterator,v.end()); 6 I& _7 H M2 m p! H/ ~( p6 h
} * J6 V: V- `' h
return v;
3 _6 j! O: ^6 R. T7 |$ v1 t}
( J$ a U8 ]. d9 | 1 O( ?& J1 r1 a* e
//两个vector求交集
0 p! }$ C2 |+ @- z6 r! tvector<int> vectors_intersection(vector<int> v1,vector<int> v2){
6 Y9 u9 Q& c% q9 X3 D vector<int> v; 5 j) V% Z$ m% L2 q2 u \0 E
sort(v1.begin(),v1.end()); [# G8 v* O; i9 }( m
sort(v2.begin(),v2.end()); # j5 u' b9 G9 N. _( }; C
set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集 : S8 v7 r( q& b9 T/ y* R! _. H2 l
return v; & z6 J+ E4 M# g3 b3 T9 T
}
' q, N$ n8 T- k
+ p- u$ o# w3 m% \( y6 {5 l. ?//两个vector求并集
" H, R0 G' e8 A! A0 e Jvector<int> vectors_set_union(vector<int> v1,vector<int> v2){ $ E; }, ]: k' }$ a6 ~
vector<int> v;
$ D) V' e; q t8 c3 K( z: T sort(v1.begin(),v1.end());
/ i+ m5 y V0 F/ v" }- R# } sort(v2.begin(),v2.end()); 0 x( @( w2 \7 k2 d
set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
3 I c+ W, j4 @" E return v;
1 L2 P7 ?- d5 w& P9 p} 6 J$ Y' L. m2 E. d) ]! I0 K
/ f0 C5 M% M% \7 F//判断vector的某一元素是否存在 ! b2 I$ F. q5 K$ v/ z
bool is_element_in_vector(vector<int> v,int element){ 8 J7 q9 F: u7 M* t! X
vector<int>::iterator it;
! ~, I/ B) Q2 t/ }; L0 U it=find(v.begin(),v.end(),element);
# Y. @% ^, @, S. n! ^7 n if (it!=v.end()){
. V, m7 T2 C+ E return true; 1 ]: U& m0 J8 ~6 {) U9 s
}
+ y1 R* f+ d7 O8 s1 W0 `/ o else{
. z+ a+ c% |7 s# b% W return false; - C0 u; \6 S7 O4 a4 Q g0 T+ B% W0 F
} ! g7 F; _1 ^8 S1 A( M9 m- i# k
} / L1 ~$ o( s9 n% I
[/mw_shl_code]
: S( A% b! Z9 V3 i4 D |
|