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

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

admin 楼主

2018-4-3 07:56:54

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

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

x

; \7 G8 O3 `( k( T+ h两个vector 去重复,相交,合并的函数分享
- _) k& [' b4 e! C
; \0 j% S" r: g1 d/ K3 b. ~" r[mw_shl_code=c,true]//容器vector中元素的去重  # }( M$ \& x5 |4 j
vector<int> unique_element_in_vector(vector<int> v){  1 e- I, {0 H, V7 i
    vector<int>::iterator vector_iterator;  0 T9 p6 L7 R* R' w9 o
    sort(v.begin(),v.end());  # ^( h/ ?0 ?  I2 f% Q
    vector_iterator = unique(v.begin(),v.end());  
! A9 @( W0 s/ Z- G* O6 O1 I    if(vector_iterator != v.end()){  ( e) U/ E& D- c" }8 [) z( E  \7 N
        v.erase(vector_iterator,v.end());  
% L, H; ?+ N- g$ D1 U: K4 O    }  ) L. J8 L* F/ t6 Z3 d
    return v;  . z3 _* U3 Q+ B
}  
  @1 @1 v; N; s1 w6 W- x% P  ( t/ S' j6 I) e# a! v4 {
//两个vector求交集  1 g9 L7 z; i& W" p* F
vector<int> vectors_intersection(vector<int> v1,vector<int> v2){  
; Z- {# M; j$ L7 [1 V    vector<int> v;  ) b* m0 m% Z" q4 b) a' ^; a
    sort(v1.begin(),v1.end());     ! F/ b6 Q/ d5 z7 a8 V( C/ o
    sort(v2.begin(),v2.end());     * l4 J& L2 R* u7 @
    set_intersection(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集   6 G+ \5 ?/ A: m5 B5 o9 n4 T* s
    return v;  
9 V) r, @3 \" c+ E, {}  3 O3 y0 c& D1 z# ?$ d: `
  
! [( Z; m5 X  ^//两个vector求并集  
3 M) j. J2 o: i8 z$ G% {' c) ?) Rvector<int> vectors_set_union(vector<int> v1,vector<int> v2){  
" P- r, f4 T8 U  ~- h    vector<int> v;  8 {9 i2 S- V- B4 V# n
    sort(v1.begin(),v1.end());     ( N, `/ C* x( }! A9 x% ^
    sort(v2.begin(),v2.end());     
4 n2 L2 O3 ^2 m6 ^    set_union(v1.begin(),v1.end(),v2.begin(),v2.end(),back_inserter(v));//求交集   " I6 k5 d' l; p
    return v;  9 p- R7 m0 s. v8 l3 f
}  
& ~; s  p4 b( b" v9 Y$ x  8 p. X) E- }1 @) k( o
//判断vector的某一元素是否存在  
/ w: ^" F! L; J* Jbool is_element_in_vector(vector<int> v,int element){  6 Y8 Y- z: A5 p) F7 V4 v6 w
    vector<int>::iterator it;  
4 c7 f& J/ v0 d7 c6 |% {8 j) T( ^7 [    it=find(v.begin(),v.end(),element);    w% X# Z5 ]) I9 Y1 l
    if (it!=v.end()){  9 o6 @: C: z' x2 H& i
        return true;  9 T5 `. e8 t5 s+ F3 k  D
    }  % ^) U: X' v2 y6 \7 n1 f% f
    else{  
# O, S, h, p# d        return false;  4 i$ a5 w, x# T2 U9 Y5 z
    }  # u" p. d* X' B
}  1 Z2 ?* P" G( G- Y$ F: `+ A
  [/mw_shl_code]* ^- o' y& r- J8 w8 ]  |
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了