|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
& T6 S. H/ A# ~6 D- b* J
两个vector 去重复,相交,合并的函数分享+ _. C; l4 \! x% C# q! ^1 ~
2 S" R- }0 O& h7 z3 l' |, }* R! H[mw_shl_code=c,true]//容器vector中元素的去重
: j! p9 t8 T% Q" {vector<int> unique_element_in_vector(vector<int> v){ ( f0 T+ t/ y! z
vector<int>::iterator vector_iterator; % Y+ H. e2 c" o" p
sort(v.begin(),v.end()); Y" m. ~5 w6 U4 P' d
vector_iterator = unique(v.begin(),v.end()); 0 M3 b9 k0 [/ ~% \) ?: c) v
if(vector_iterator != v.end()){
G* a- s7 B8 @8 W* ]% k: D v.erase(vector_iterator,v.end());
( n0 f- |' Y: ~# _9 \5 |5 p I, Y' G } ' |3 h# E4 h+ j& }9 |
return v; 5 o$ d$ t. ]0 o/ I( u
}
# U3 @5 w, r2 T% X) H7 k
/ l1 E& W4 e7 E; {- K//两个vector求交集
6 V. s9 ]' P7 P" W+ X& g! [+ ?: @vector<int> vectors_intersection(vector<int> v1,vector<int> v2){ & ~* g, r1 ?7 P) L. b
vector<int> v;
( Q- S( X9 \+ R; e4 p! x sort(v1.begin(),v1.end()); % z2 K4 T3 `" }. I$ i. S$ W
sort(v2.begin(),v2.end());
, L, ^% W: j" d. y/ _0 G/ b1 o set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
2 C" c2 a0 X9 {. f' [/ q return v; 4 b) J8 `: V" _; Q# g6 v9 S+ s" M
}
2 D; L! M" Q1 E) j- A* D5 {5 E- v 7 M6 F& k8 ~+ z5 g. x
//两个vector求并集 - _0 c3 H( r' s3 {
vector<int> vectors_set_union(vector<int> v1,vector<int> v2){ " V8 a+ V7 h% X' M" `9 r+ B) Y6 S
vector<int> v; # B- _2 t; K$ ?/ W4 Z
sort(v1.begin(),v1.end()); ( m! D6 `/ r" Z4 B& Q
sort(v2.begin(),v2.end()); A3 R0 x- w8 d: }7 }! P
set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
2 k2 z5 N8 b- k4 I$ z return v;
6 e% K8 H- \! {& W! I* p}
8 ]& u; n0 z H8 r( O
6 p- w6 i' A- p4 K9 u9 s4 C//判断vector的某一元素是否存在 / u" T$ a; C6 \2 ]
bool is_element_in_vector(vector<int> v,int element){
. c& p0 R* R1 n) L. A- k1 x# D& J vector<int>::iterator it; + _9 r0 P& z0 c
it=find(v.begin(),v.end(),element);
( g, a/ }+ f1 L& d/ I% j if (it!=v.end()){
2 r Z3 }" K2 \2 c/ C" ?) w return true;
' O+ R j- S3 C% I4 V; e( |9 j: Z( B } 6 [* t! t- f& A
else{
( _ h, D. V* L return false;
' d. s0 h' F+ Q* J2 E7 f }
3 q1 S6 N$ [: {9 g- c5 w/ M3 ?; T}
" u9 o4 q) n( y [/mw_shl_code]
6 l, \* D: b9 m: D6 Z |
|