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 3024 0

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

admin 楼主

2018-4-3 07:56:54

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

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

x
7 [! E+ S5 Z4 V8 C8 ]
两个vector 去重复,相交,合并的函数分享& @; w8 O5 w) g* x! u4 F

1 z" U5 m1 [4 V! A/ z[mw_shl_code=c,true]//容器vector中元素的去重  
4 X/ ~' M& G3 ^- J- ]0 ?vector<int> unique_element_in_vector(vector<int> v){  ( M0 D6 c7 M/ u, N7 V$ J
    vector<int>::iterator vector_iterator;  
  g- q4 P- Q, b, R    sort(v.begin(),v.end());  , D8 c2 |( V8 o4 W1 e  @1 }8 S1 G
    vector_iterator = unique(v.begin(),v.end());  ; ]8 D2 l6 k) H/ c; @2 K
    if(vector_iterator != v.end()){  3 R- F) `- ^* `0 c& j( h0 D* Y6 ]
        v.erase(vector_iterator,v.end());  0 E* v1 h5 w8 W$ d
    }  
& @" r/ _/ d1 ], u    return v;  
7 b! s, V, c1 D  n7 I}  
4 p: y; G* G2 N  % h% g# i$ Y. \8 Q& P' r9 j  ]2 w
//两个vector求交集  9 ^4 I1 X- M- G$ U7 h- O
vector<int> vectors_intersection(vector<int> v1,vector<int> v2){  $ `* n' ^( s4 e  Q1 x
    vector<int> v;  - E  G; S4 c( A% N% N/ h
    sort(v1.begin(),v1.end());     ; z. y8 j2 N) I" }1 b0 A
    sort(v2.begin(),v2.end());     6 z% a5 P9 Q' E2 p6 v$ ]8 U
    set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集   
! d6 O- f- ^: f! [6 ]) M    return v;  8 ]4 `* n9 q% |8 o" T5 |* ~# f& R
}  0 C# c5 p9 Q/ X" C
  
9 p. p1 Y4 R! F: ]+ a, F//两个vector求并集  
' {! p; \  b5 [5 m" C- i5 b. U1 jvector<int> vectors_set_union(vector<int> v1,vector<int> v2){  
' f" v# x3 O2 D    vector<int> v;  
: z! _" ]! x( D1 B$ O5 @5 F    sort(v1.begin(),v1.end());     
( o& F$ H6 C  P& r: K9 Z    sort(v2.begin(),v2.end());     ' O8 L1 o% y" c* ?: A* D& U
    set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集   8 @/ U( [3 b/ B: O3 R  b/ q( Y7 i
    return v;  , |  u+ R$ c5 [- Z* [0 w% r4 r
}  
! v- s# E8 b- L3 E7 R  
* r3 M# w. A9 r+ G- }7 o//判断vector的某一元素是否存在  
/ p% y. ^5 ]) m! Rbool is_element_in_vector(vector<int> v,int element){  2 P4 e1 D( M7 }- L7 _
    vector<int>::iterator it;  - C2 |! a# ~+ Z! b
    it=find(v.begin(),v.end(),element);  
: x6 e* N$ ~% U: j6 E6 u    if (it!=v.end()){  1 k5 r. X) y2 q- o5 r0 k
        return true;  $ N) m. [6 q. z' f( q( o
    }  
9 R, m, N) n9 t! V6 J8 ^* i    else{  
2 I, z" Q- L  g; h0 z        return false;  ( ]! R) c6 V. ^6 I
    }  & u' f* c2 P9 i( j9 P
}  ; X+ O5 C) v# i9 S' O
  [/mw_shl_code]
' n2 a1 _9 T1 t  V. Y
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了