|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
% @4 V6 ?* i+ Y& L4 o ^ y9 _两个vector 去重复,相交,合并的函数分享
* w) p% @) Q# Z/ Q! T( ^1 X
3 c S) |- f4 ?& |( i0 r3 }0 J[mw_shl_code=c,true]//容器vector中元素的去重
- b0 A( {. u ]% r, {6 Tvector<int> unique_element_in_vector(vector<int> v){
3 V1 \- t8 L+ y" m6 p% |3 p vector<int>::iterator vector_iterator;
1 d7 N" e" ]% e8 K, |+ \( ] sort(v.begin(),v.end()); - u K* g6 c; ]5 c: E
vector_iterator = unique(v.begin(),v.end());
( u. K$ M# ?" d8 M& r* {( L1 G if(vector_iterator != v.end()){
4 G: B6 p( D$ H3 H- k7 F v.erase(vector_iterator,v.end());
/ \# @, Y) I) W0 e; K1 P }
: ~& C, y8 D2 t7 f$ J return v;
+ U+ @* X* c! \- g! T* w: ~+ H} 2 }: ]- {. |2 p! s" S I
3 L# u1 R) {4 Y# Q2 r//两个vector求交集 ( ], r. j1 o8 `+ r m) ]! x
vector<int> vectors_intersection(vector<int> v1,vector<int> v2){
& t/ V6 D+ M% `* i/ w vector<int> v; & a' l4 v: a" }) A7 Y
sort(v1.begin(),v1.end()); : \: B* r5 I, E1 i
sort(v2.begin(),v2.end());
7 [8 ^8 S& o: U0 ? set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
6 f8 o5 P* f3 G1 d* Y( H return v;
: g& }, o/ z* x! z}
" u1 v7 g. i: B$ ]1 M$ w . r1 w" b1 {9 F
//两个vector求并集
8 ~& ]) Z' M# m6 u& Zvector<int> vectors_set_union(vector<int> v1,vector<int> v2){
$ l4 W6 _1 P( _) ^, [8 g vector<int> v; - j8 \4 b* H5 L/ n" u' H
sort(v1.begin(),v1.end());
. Q z9 X* d# e$ S c( B8 ~8 J sort(v2.begin(),v2.end());
+ ~9 N ^9 [( |( k& j# }& Z7 g set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
; x, m0 U* \+ I; s2 l; K) [# g% T return v;
9 A: n0 c2 H0 t: s- |1 A0 k- J}
2 q) P/ i+ A s$ Q( h6 M
0 J Q4 \" l! U$ }6 P# y( ~! J//判断vector的某一元素是否存在 ) ~1 c" B1 p; R; v* c5 p( g8 `% X4 b
bool is_element_in_vector(vector<int> v,int element){ : F3 |" M8 s; B- S/ v( z* d
vector<int>::iterator it;
4 G1 b6 S: B' H7 f0 m8 w( \9 o. Q it=find(v.begin(),v.end(),element);
/ ~! ?- W9 B4 c, s% ]9 R if (it!=v.end()){
7 s9 i) F0 D9 E$ j9 S return true; * g8 x* u2 @$ e! q9 y& V; [) \
}
+ V8 X. g+ [6 Q8 w4 w1 n else{ : K/ X9 U* m) L% L/ Z. O
return false; 5 \) f7 U; @: ~. a$ w$ |9 ?, ^
}
- y6 [1 \! C+ H, S- | y}
7 E7 d$ W* B }" d- _) A7 p [/mw_shl_code]
1 z! q5 r0 O" o a8 P$ s: V |
|