PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

PLM之家PLMHome-国产软件践行者

[资料分享] 两个vector 去重复,相交,合并的函数分享

[复制链接]

2018-4-3 07:56:54 3025 0

admin 发表于 2018-4-3 07:56:54 |阅读模式

admin 楼主

2018-4-3 07:56:54

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x

) b  e; }$ X, r& r- _两个vector 去重复,相交,合并的函数分享' ?2 f# [; T" k9 ]6 z

/ c" t5 O( o$ a  ]1 l[mw_shl_code=c,true]//容器vector中元素的去重  
0 s8 [" x1 B7 u5 s1 S1 Lvector<int> unique_element_in_vector(vector<int> v){  
' r4 |7 Y/ _( l$ N, s7 p: @    vector<int>::iterator vector_iterator;  8 Y% w$ q  H% G
    sort(v.begin(),v.end());  : }( B1 J/ O, b3 P+ X6 a( D& h
    vector_iterator = unique(v.begin(),v.end());  
4 x- y- }# A5 y7 V9 @3 h# {- U    if(vector_iterator != v.end()){  
' G' ?2 G) U8 {8 ^) M        v.erase(vector_iterator,v.end());  / {: j* K9 }2 v* C- S" a( X
    }  
2 V  `% u3 v0 x5 W    return v;  . V( M9 c3 H& D6 k9 J/ d: Y
}  8 s  @3 `/ W( {
  
4 ~. I. u' t3 B( N//两个vector求交集  
9 p. {! g) Q! hvector<int> vectors_intersection(vector<int> v1,vector<int> v2){  
  _+ {% H" `; y- N7 ?5 }/ M    vector<int> v;  / M# Z- x" D! J# C6 n6 M5 Y% u
    sort(v1.begin(),v1.end());     
  W! u6 U- a( x. V% |+ ?    sort(v2.begin(),v2.end());     
4 T* t6 n% r  I2 @' ^" q. d    set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集   7 {; r- @/ `; m: T- P' h4 b
    return v;  
9 h; x$ g6 _9 X2 A}  ! c7 ~0 f' t: A4 o0 h
  ; m  J4 |0 F( o: ^, a
//两个vector求并集  * ^8 z! B+ G  w/ u8 H" i
vector<int> vectors_set_union(vector<int> v1,vector<int> v2){  
: F9 J% j- j, `1 B  C+ X7 R    vector<int> v;  
0 D8 E- ]. Q9 Y1 W, |    sort(v1.begin(),v1.end());     
/ W$ X( C  W5 y3 J8 y1 _$ p    sort(v2.begin(),v2.end());     ! I9 I5 H' q- [
    set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集   0 `4 p, I' E6 f* `* l8 j2 P
    return v;  
- G  p1 }2 {& }}  1 Y6 B; W8 D" P3 _* w9 L) ~4 o
  
- P; c* c# b( S% D% W; ]: ]( o# }//判断vector的某一元素是否存在  ! o* m- i8 s2 m7 a
bool is_element_in_vector(vector<int> v,int element){  ; w1 S% e0 k( r! i2 _. x
    vector<int>::iterator it;  
% ~9 }. b0 n' J8 K* D1 h    it=find(v.begin(),v.end(),element);  1 _, ~- i) a$ q+ }$ |6 L
    if (it!=v.end()){  ( ^5 q* f: \% Y/ }4 J9 q2 e
        return true;  8 Y( W* ]3 B; z$ ^) V
    }  
+ P0 S! v( |# n, [0 ?    else{  
5 h( ?) l% o" @2 H2 C1 \        return false;    l4 n6 D: X3 H5 c$ i  d
    }  
- K& d0 _" G5 S! V: z}  
3 A% `7 R5 C( R( J& E0 b( |& Z' H  [/mw_shl_code]$ e* y, L5 [- ~  M. V
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了