#include <iostream>
#include <set>

using namespace std;

typedef struct tagStudentInfo
{
  int nID;
  string strName;
  bool operator <(tagStudentInfo const& _A) const//升序排列

{
     if(nID<_A.nID)
     return true;
     if(nID == _A.nID)
     return strName.compare(_A.strName) < 0;
        return false;
    }
}sInfo,*PsInfo;

int main()
{
  set<sInfo>setS;
  sInfo stuInfo;

stuInfo.nID = 10;
  stuInfo.strName = "test1";
  setS.insert(stuInfo);
  
  stuInfo.nID = 20;
  stuInfo.strName = "test2";
  setS.insert(stuInfo);

set<sInfo>::iterator sIter;
  for(sIter=setS.begin(); sIter!=setS.end(); sIter++)
  {
    cout <<(*sIter).nID <<" "<< (*sIter).strName << endl;
  }

set<int>a;
  set<int>b;
  set<int>c;
  set<int>d;
  set<int>e;
   
  a.insert(1);
  a.insert(2);
  a.insert(3);
  a.insert(4);
  a.insert(5);

b.insert(3);
  b.insert(4);
  b.insert(5);
  
  set_union(a.begin(), a.end(), b.begin(), b.end(), inserter(c, c.begin()));
  set<int>::iterator s;
  for(s=c.begin(); s!=c.end(); s++)
  {
    cout <<(*s)<<",";
  }
  cout << endl;
  
  set_intersection(a.begin(), a.end(), b.begin(), b.end(), inserter(d, d.begin()));
  for(s=d.begin(); s!=d.end(); s++)
  {
    cout <<(*s) <<",";
  }
  cout << endl;
  
  set_difference(a.begin(), a.end(), b.begin(), b.end(), inserter(e, e.begin()));
  for(s=e.begin(); s!=e.end(); s++)
  {
    cout <<(*s)<<",";
  }
  cout <<endl;
  
  return 0;
}    

10 test1
20 test2
1,2,3,4,5,
3,4,5,
1,2,

转自http://blog.chinaunix.net/uid-9950859-id-99130.html

转载于:https://www.cnblogs.com/hailong88/p/3236554.html

stl set求交集 并集 差集相关推荐

  1. MySQL求交集 并集 差集

    MySQL求交集 并集 差集 交集 两个表之间相同的 并集 两个表之间的总和 ps: union 自带去重 差集 两个表直接的差值

  2. sort求交集并集差集

    uniq -u    取出只出现过一次的元素,用来求差集 uniq -c     group by uniq -d     取出出现次数大于等于2的元素,用来求交集 sort 1 2 和cat 1 2 ...

  3. 大数据集合求交集_Java8 实现ArrayList求交集并集差集

    本文借助Java8的Stream API完成ArrayList集合运算:求交集.并集和差集! public class CollectionUtil {/*** 判断为空*/public static ...

  4. c语言字符串差集,数组求交集并集差集问题

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 我的思路是先让数组a中的数和数组b中的数一个个比较,相同的放入一个数组c,不同的放入另一个数组aa, 再让数组b中的数和数组a中的数一个个比较,相同的直接 ...

  5. java两map取交集_Java Map 求交集 并集 差集

    import com.google.common.collect.MapDifference; import com.google.common.collect.Maps; import java.u ...

  6. oracle交集差集并集,SQL求 交集 并集 差集

    线程笔记:Future模式 线程技术可以让我们的程序同时做多件事情,线程的工作模式有很多,常见的一种模式就是处理网站的并发,今天我来说说线程另一种很常见的模式,这个模式和前端里的ajax类似:浏览器一 ...

  7. php 队列取并集,PHP实现对数组简单求交集,差集,并集功能示例

    php 的 PHP实现对数组简单求交集,差集,并集功能示例 本文实例讲述了PHP实现对数组简单求交集,差集,并集功能.分享给大家供大家参考,具体如下: $arr1 = array( '0' => ...

  8. php 两个数组求交集_PHP实现对数组简单求交集,差集,并集功能示例

    本文实例讲述了PHP实现对数组简单求交集,差集,并集功能.分享给大家供大家参考,具体如下: $arr1 = array( '0' => 'zero', '1' => 'one', '2' ...

  9. JAVA Hashset求集合的交集并集差集

    JAVA Hashset求集合的交集并集差集 Hashset是Set接口较为常见的一个子类,该子类的最大特点是不允许保存重复的元素,并且所有的内容都采用散列(无序)的方式进行存储. package c ...

最新文章

  1. JAVA的正则表达式语法
  2. 【跃迁之路】【425天】刻意练习系列184—SQL(2018.04.06)
  3. Access自动编号 违反并发性原因解析
  4. R语言可视化分面图、假设检验分组t检验、可视化单变量分组分面箱图(faceting bar plot)、添加误差条(error bar)、添加p值、添加抖动数据点(jitter points)
  5. base--AuditResult
  6. c语言六套,C语言编程笔试题(第六套)
  7. stm32滴答计时器_STM32的系统滴答定时器(Systick)
  8. tuxedo连接mysql_9.5.3 Tuxedo与各种数据库的连接
  9. 登录后主机名变成-bash-4.2解决
  10. 最新回归算法理解、实现及应用(2)logistic回归
  11. 数据分析--优化模型
  12. 使用Nginx配置反向代理,完成端口转发
  13. 用Java实现并查集
  14. 【错误记录】Ubuntu 编译 ffmpeg 报错 ( nasm/yasm not found or too old. Use --disable-x86asm for a crippled bu )
  15. 微信小程序 开发者工具和真机调试都能正常请求访问,线上不能登录请求问题
  16. B. Petya and Exam
  17. BlockingQueue及其实现
  18. python opencv 直方图均衡_OpenCV-Python教程(10、直方图均衡化)
  19. iphoneX系列手机在页面滚动时隐藏底部的操作栏
  20. config linux start up with only one app - firefox

热门文章

  1. go的http包详解
  2. golang中的big.Int
  3. 尚硅谷图解Java数据结构和算法四
  4. linux命令tar
  5. STM32中stm32f0xx_flash.icf文件的作用详解!
  6. python网络编程基础(线程与进程、并行与并发、同步与异步、阻塞与非阻塞、CPU密集型与IO密集型)...
  7. 【Golang 基础】Go 语言的程序结构
  8. 【Visual Studio】如何在VS 2012中打印变量值到输出窗口
  9. Android解决button反复点击问题
  10. 微服务架构崛起 能否成为下一代云计算?