|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
. D" ^. ^, I/ B m0 ]0 i
两个vector 去重复,相交,合并的函数分享
6 n6 \- _* d& X8 `9 K6 C) Q/ u9 o, e8 N1 |, u/ b& J9 c
[mw_shl_code=c,true]//容器vector中元素的去重
+ j1 e; ~- }6 `3 cvector<int> unique_element_in_vector(vector<int> v){
- z, v' b( ^. k( i; \5 c; t+ Q! s vector<int>::iterator vector_iterator;
7 F$ J n w- h: ~ sort(v.begin(),v.end());
9 D# {# n. p- @8 n. t" _, f. D vector_iterator = unique(v.begin(),v.end());
: M# h$ x. g& g" I( D3 \2 T: z! g if(vector_iterator != v.end()){
: t1 e. P$ z e5 h4 x v.erase(vector_iterator,v.end());
; M, B) }2 e1 i* d5 K/ B3 [ }
2 E# w+ \- z* z7 T' J return v; + ?( \4 T8 [; J! ]$ x
}
: H: i$ g' H( f: @: |+ `
5 f) E) @+ x( j1 d8 A//两个vector求交集 9 R) X, T$ x4 E$ L O$ W
vector<int> vectors_intersection(vector<int> v1,vector<int> v2){ * R0 i9 u$ J6 j0 O! ^9 x- o
vector<int> v; W. `( k" ?0 u! J3 h* u
sort(v1.begin(),v1.end());
3 g4 v; e; [: a1 r% G sort(v2.begin(),v2.end()); 2 ~' u' ]& g3 e, G# m: C$ e( D
set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
$ {0 v$ W3 i ]: ] return v;
; Y) g: X: G9 O" m3 @7 L} # b8 w' ^0 z- Q5 z3 i1 f
# b4 @4 W `! A//两个vector求并集
# s# ]: b' y: \: Y7 t+ Ovector<int> vectors_set_union(vector<int> v1,vector<int> v2){
) W2 `: K# n+ H9 g7 I vector<int> v; $ f+ `+ o3 {% C0 ^
sort(v1.begin(),v1.end()); + S" {! m5 t% c6 z* L: n: O2 Z
sort(v2.begin(),v2.end()); # y' a1 s: B/ O. ~
set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集 4 S( j: S8 W6 z6 m
return v; 0 n, H: B3 F6 t6 V
}
" E( [" e) b, S7 z0 {* w! B% C) p - Y8 Z/ G% _5 b2 i+ l& B; Z
//判断vector的某一元素是否存在 / X. L3 U) L& ]; h
bool is_element_in_vector(vector<int> v,int element){ . Y; J$ K4 z$ X2 o; M, s
vector<int>::iterator it; , a; K8 I0 T$ ~( \
it=find(v.begin(),v.end(),element);
" b+ J8 d- |, |- ^/ Z) L if (it!=v.end()){ : B o4 F3 I& w1 N& W/ D% Y
return true;
8 W3 ?' c. S; Y$ W) F- f } : o$ B; o9 K0 X8 Q
else{
, n: K3 |& T+ p6 d: N) R7 o return false;
7 e$ A6 x( f2 t7 p5 |$ r: D }
8 X6 `2 D* a8 ]3 S' N} 4 | X1 q% ^4 o; R9 W9 _( ?
[/mw_shl_code] v5 W/ Y2 Z, F6 ~# E/ @8 ], ?
|
|