|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
8 ^) j7 H `0 e3 r4 ?& o
两个vector 去重复,相交,合并的函数分享4 N- b N+ H# h0 u: q" [/ \
# p" j% T" _( b4 g2 S2 Z[mw_shl_code=c,true]//容器vector中元素的去重 - r8 O' z& g3 U. f; h
vector<int> unique_element_in_vector(vector<int> v){ 2 c% \+ M7 H9 j* Y6 k
vector<int>::iterator vector_iterator; - v D6 b3 t0 _
sort(v.begin(),v.end());
5 U2 i0 R) h! J$ P! h3 X) n vector_iterator = unique(v.begin(),v.end()); . A. v7 D; W4 V! [! x% _
if(vector_iterator != v.end()){
) Z$ a" a& R2 T% p3 P v.erase(vector_iterator,v.end());
, v% y( ]1 P) a d }
2 j3 o- k. a- M8 d, a, q return v;
! U, Q( L& [) \ D7 m} ; Z" b4 f% w& n) W" \% ~; m
6 {) J; D3 A; ^: @5 A//两个vector求交集 4 ?( f! [) D" Q- y
vector<int> vectors_intersection(vector<int> v1,vector<int> v2){
, l8 w5 ]1 T- e- t" G vector<int> v;
% t- ^# H3 S( v" Q, ^2 p7 i sort(v1.begin(),v1.end());
8 [6 i: S. P! M5 ~( ] sort(v2.begin(),v2.end()); # R# `1 P: U8 ^ n8 ?
set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集 3 b# e% b0 h5 E, |6 x, ]3 e
return v;
3 m w' ^4 V+ R0 |}
' R9 g' u. u+ D# f5 \- `
9 l" L$ e6 g1 ]//两个vector求并集
?$ J) ?6 b( j+ U( Qvector<int> vectors_set_union(vector<int> v1,vector<int> v2){ 4 \, L7 S* @/ e9 G: @
vector<int> v;
7 O3 L d0 {, q- V$ Z# ]4 u& c" O sort(v1.begin(),v1.end());
& h3 D' F a$ f$ q& L sort(v2.begin(),v2.end()); & D( i) L6 T: ]. ]3 r
set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
6 |( t6 V# `4 W Q3 t return v; . j, [6 r9 ^0 z% q4 q
} ) u+ \$ S* y' \/ c$ V8 ^
" ~0 N. ]* f9 r; J
//判断vector的某一元素是否存在
2 w4 j; e/ T j2 J8 z& ?bool is_element_in_vector(vector<int> v,int element){
4 O% g5 ^9 s% d8 _ vector<int>::iterator it;
4 c r6 p U [ it=find(v.begin(),v.end(),element); / }( }. M; ~ d6 j) \6 \, \
if (it!=v.end()){
6 Z$ S2 D; B) s( J1 ?+ E: s, B% @ return true; , j$ ?+ b/ ~+ G6 W: O" ?
}
5 B5 T' Q0 r/ g# ~3 t$ j8 G/ e else{
5 k, }6 b( E3 `" V return false;
3 K4 u. v0 \# q+ S* Q4 y$ } }
: r y. }; B$ O! s" Y# c. @}
; H$ o# T. g: Z1 O [/mw_shl_code]
9 q c; J- Z6 C; o4 h, Z# V# l$ x |
|