|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
# G2 n1 u" O0 U3 W* K( f" ~% I( k两个vector 去重复,相交,合并的函数分享
; X* e) v& H* N. I
+ R$ U4 b( ]% ]! [2 W N+ d[mw_shl_code=c,true]//容器vector中元素的去重 ' H+ q) h7 v A* p f- A% p3 v+ E
vector<int> unique_element_in_vector(vector<int> v){ 6 i8 [( x+ L. K8 V0 x# O
vector<int>::iterator vector_iterator; & \# ~: F3 z* G. K4 I
sort(v.begin(),v.end());
: p4 d& n! u& r: g; _5 J vector_iterator = unique(v.begin(),v.end());
" s7 F! T3 b: m$ N if(vector_iterator != v.end()){ 1 z1 s/ M& E5 n5 B) ?
v.erase(vector_iterator,v.end());
+ s/ v1 G ^( U9 }8 @( a: R" M }
' ^* Y& N# V0 X. c: |- c" A/ _4 w return v;
* t. }2 P$ e6 N5 L) e7 M} ~/ I: D6 i1 |7 L
* Q; ]: E0 M/ [9 h: E( \
//两个vector求交集
% o" z" W5 O6 c, |* V! Jvector<int> vectors_intersection(vector<int> v1,vector<int> v2){
6 n3 A$ C8 o* A8 K3 `0 k vector<int> v;
# D0 [# g4 J7 g: E sort(v1.begin(),v1.end());
9 F! O* }+ G; G7 n6 ]; g" l sort(v2.begin(),v2.end());
1 B2 N5 s# c/ n; w set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
- w# z7 G) s. l+ W return v;
' a4 z$ b5 D7 \; T( l} / ]) c% y2 V8 e$ u
. R3 y- U1 K3 V) C8 \% c
//两个vector求并集
3 s8 r) ^2 a/ Y( l- X( c. Ovector<int> vectors_set_union(vector<int> v1,vector<int> v2){
/ x, V4 p7 ]9 z+ k) R$ b vector<int> v;
7 }0 b" B# K4 ^% N7 ?" H sort(v1.begin(),v1.end()); : h C" A5 q3 Z& Z" u' O
sort(v2.begin(),v2.end()); 9 [' v7 s- f2 z& L1 T1 M; J
set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集 5 M) ^; i7 A* T0 w' ]: E3 @
return v; 3 |0 {. A' D8 G. h8 Y. Y+ f8 |
}
: a! s4 G: p- [% @8 W
0 i7 z c1 Y1 S! M& I; \//判断vector的某一元素是否存在 7 D( c# l3 i1 X& Q( m ?% y
bool is_element_in_vector(vector<int> v,int element){
: I: p$ [8 k( I$ u `; L- d5 E* c vector<int>::iterator it; O; g9 H4 F9 x* w! f
it=find(v.begin(),v.end(),element);
/ j- Y( u$ j* @ if (it!=v.end()){ . B# t! X( _ J8 J
return true;
+ `* ]' z* u8 u, Z, [* v" }& f& c }
d% n0 E/ A( i0 o* {( _ else{
1 @& l2 |: T6 h' L% o6 c6 ]# \6 X2 \ return false; ( ^& A4 v/ `& B) H# z2 [2 Z
}
# v' p3 T1 E8 M: n! I, N} ; k9 B- V; {! F. `
[/mw_shl_code]8 p. R7 {3 v& b+ k6 f. F* Q: v
|
|