|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
% k% B3 U5 U+ K' |! P# t! R: t/ C$ ~两个vector 去重复,相交,合并的函数分享
1 k' c# D, S- `
( D, s; ]' P n( g; H' ][mw_shl_code=c,true]//容器vector中元素的去重
9 c6 p- a' x, A: j2 n: }vector<int> unique_element_in_vector(vector<int> v){
( J4 g, j6 I9 Q: i4 _ vector<int>::iterator vector_iterator; / o. z& |- R/ k8 \4 R
sort(v.begin(),v.end());
: \6 _% C+ ]7 p vector_iterator = unique(v.begin(),v.end()); 3 C, r. k, N( k
if(vector_iterator != v.end()){
! y1 X, K" x* j0 z" d0 v& q; i v.erase(vector_iterator,v.end()); 9 i$ J }' s7 B- B
}
: r8 y; w3 S4 ~$ I% J: h* P return v; ! o5 K7 G" L/ S0 {9 N- y% r1 o
}
2 ]; f4 M* X& V' Q7 g, R3 L
. D9 _/ X6 f1 u, f; t6 a4 E//两个vector求交集 ) r3 q" D, t& s; z! y
vector<int> vectors_intersection(vector<int> v1,vector<int> v2){
/ U2 I, s6 \7 g* G vector<int> v;
4 M% M3 ~$ N. `- `9 i sort(v1.begin(),v1.end()); " Y v U; W0 \ ^8 B2 S( f8 Q# h
sort(v2.begin(),v2.end()); + ?, `+ ~& V" B& {* J' j o1 M
set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
0 V `6 g+ c0 n6 D return v;
9 p4 P* ^) g+ s/ D+ k6 X} 6 V4 V3 o5 z: B+ { g
& u' |6 L$ i' O q- y
//两个vector求并集 + n% Y1 ^3 B9 G3 o) T
vector<int> vectors_set_union(vector<int> v1,vector<int> v2){
! w& {$ t3 l _8 L ? vector<int> v;
4 g* L: ]! o7 T5 a8 ` sort(v1.begin(),v1.end()); $ T u7 R7 c# J+ F0 `( j6 i
sort(v2.begin(),v2.end());
2 Z2 U2 R* N- n5 E( ]. R! a0 l, o set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集
& Q2 o! X/ G( Z9 W& D! H4 j; h return v; ! b6 T, U, I: K! T( m
} ) N* w' Q: ?' }1 Y4 V
; n" c% \: _* ?$ g+ h0 {* i [//判断vector的某一元素是否存在 7 Q. C9 F6 `9 b; @2 D
bool is_element_in_vector(vector<int> v,int element){
/ L/ ]8 u! X9 p% L/ f vector<int>::iterator it; 7 f4 ^6 A Y+ I( j6 Y
it=find(v.begin(),v.end(),element); 3 c* {% F) p: u0 K) h |
if (it!=v.end()){
& I# p2 a, H7 u2 ] return true;
/ s( O: X2 Z3 w8 }+ W } 6 I$ C* U3 `( [# _, l" b! Z- h
else{
+ S/ Q; \8 J& T! m& @ return false;
$ @+ n! p3 B, ]" A) T2 Q } ( ~; o! K3 }4 {% \ ]
} $ s) K5 ]0 J, {" c
[/mw_shl_code]
/ Y1 @, g# n# q2 n% m6 { |
|