当前位置: 首页 > news >正文

外贸soho建网站贵阳免费做网站

外贸soho建网站,贵阳免费做网站,wordpress json数据库,网页游戏开服表是什么set也是STL中比较常见的容器。set集合容器实现了红黑树的平衡二叉检索树的数据结构#xff0c;它会自动调整二叉树的排列#xff0c;把元素放到适当的位置。set容器所包含的元素的值是唯一的#xff0c;集合中的元素按一定的顺序排列。 我们构造set集合的目的是为了快速的检…set也是STL中比较常见的容器。set集合容器实现了红黑树的平衡二叉检索树的数据结构它会自动调整二叉树的排列把元素放到适当的位置。set容器所包含的元素的值是唯一的集合中的元素按一定的顺序排列。 我们构造set集合的目的是为了快速的检索不可直接去修改键值。 set的一些常见操作 begin() 返回指向第一个元素的迭代器 clear() 清除所有元素 count() 返回某个值元素的个数 empty() 如果集合为空返回true(真 end() 返回指向最后一个元素之后的迭代器不是最后一个元素 erase() 删除集合中的元素 find() 返回一个指向被查找到元素的迭代器 insert() 在集合中插入元素 max_size() 返回集合能容纳的元素的最大限值 size() 集合中元素的数目 swap() 交换两个集合变量 其实set的大部分操作是与vector类似的不过set不支持随机访问必须要使用迭代器去访问。由于set放入一个元素就会调整这个元素的位置把它放到合适的位置所以set中只有一个insert插入操作。 对于集合来说我们一般有并集、交集、差集、补集这几种操作所以在set的操作中我们也有类似的集合操作它们都在#includealgorithm的头文件下 [html] view plain copy std::set_intersection() :这个函数是求两个集合的交集。  std::set_union() :求两个集合的并集  std::set_difference差集  std::set_symmetric_difference得到的结果是 第一个迭代器相对于第二个的差集 并上第二个相对于第一个的差集   学校OJ上有一个题可以来进行这几个操作下面是学校OJ的题 Description 集合的运算就是用给定的集合去指定新的集合。设A和B是集合则它们的并差交补集分别定义如下 A∪B{x|x∈A∨x∈B} A∩B{x|x∈A∧x∈B} A-B{x|x∈A∧x不属于 B} SA {x|x∈(A∪B)∧x 不属于A} SB {x|x∈(A∪B)∧x 不属于B} Input 第一行输入一个正整数T表示总共有T组测试数据。T200 然后下面有2T行每一行都有n1个数字其中第一个数字是n(0n100)表示该行后面还有n个数字输入。 Output 对于每组测试数据首先输出测试数据序号”Case #.NO” 接下来输出共7行每行都是一个集合 前2行分别输出集合A、B接下5行来分别输出集合A、B的并(A u B)、交(A n B)、差(A – B)、补。 集合中的元素用“{}”扩起来且元素之间用“ ”隔开。 Sample Input 14 1 2 3 10Sample Output Case# 1:A {1, 2, 3}B {}A u B {1, 2, 3}A n B {}A - B {1, 2, 3}SA {}SB {1, 2, 3}我的代码如下 [cpp] view plain copy #includeiostream  #includeset  #includealgorithm  #includevector  using namespace std;  void print(setint a)  {      if(a.begin()  a.end())              cout  }  endl;      for(setint::iterator it  a.begin();it!a.end();it)      {          if(ita.end())          {              it--;              cout  *it  }\n;          }          else          {              it--;              cout  *it  , ;          }      }  }  int main()  {      int T, cou  0;      setint a, b, c;      cin  T;      while(T--)      {          cou;          a.clear(), b.clear(), c.clear();          int n;          cin  n;          for(int i0;in;i)          {              int x;              cin  x;              a.insert(x);          }          cin  n;          for(int i0;in;i)          {              int x;              cin  x;              b.insert(x);          }          cout  Case#   cou  :  endl;          cout  A  {;          print(a);          cout  B  {;          print(b);          set_union(a.begin(),a.end(),b.begin(),b.end(),inserter(c,c.begin()));          cout  A u B  {;          print(c);          c.clear();          set_intersection(a.begin(),a.end(),b.begin(),b.end(),inserter(c,c.begin()));          cout  A n B  {;          print(c);          c.clear();          set_difference(a.begin(),a.end(),b.begin(),b.end(),inserter(c,c.begin()));          cout  A - B  {;          print(c);          c.clear();          set_difference(b.begin(),b.end(),a.begin(),a.end(),inserter(c,c.begin()));          cout  SA  {;          print(c);          c.clear();          set_difference(a.begin(),a.end(),b.begin(),b.end(),inserter(c,c.begin()));          cout  SB  {;          print(c);      }        return 0;  }   inserter是一个迭代器适配器中的插入迭代器。 原理其内部调用insert() 功能在容器的指定位置插入元素 限制只有提供了inset()成员函数的容器中inserter才能派上用场. 所有STL容器都提供了inset()函数. 适用所有STL容器
http://www.pierceye.com/news/9197/

相关文章:

  • 群晖系统可以做网站吗wordpress 关闭边栏
  • 传统网站 手机网站在线app
  • 网站建设意见征求表商城网站建设最新报价
  • 衡水做网站设计哪里网站建设公司比较好
  • 饰品电子商务网站的建设西安网页设计培训价格
  • 网站定制深圳郑州工程造价信息网
  • 扁平化手机网站模板三明网站建设tudouly
  • 携程网站建设展馆设计的主题有哪些
  • 首钢建设二公司网站个体工商户做网站能加地名吗
  • 徐州企业做网站自己做的网站被封了
  • 菏泽网站建设设计优设网网站
  • 怎么做北京pk10的网站做ppt找素材的网站
  • 中国建设部官方网站监理转注册phpcms律师网站模板
  • 电脑当服务器做网站公司网站有哪些
  • 网站空间更换网站建设材料
  • 建设部网站79号文件基础建设包括哪些板块
  • 一个网站的建设流程网络搭建项目案例
  • 响应式网站代码网站推广咋做的
  • apache网站拒绝访问如何用Python网站开发
  • 成品网站货源1688免费推荐吉林平台网站建设哪里有
  • 福安网站建设全国企业信用公示信息公示网官网
  • 查询网站注册时间ui设计的软件
  • 个人的网站建设目标访客留言网站
  • 哈尔滨自助建站系统网站建设公司诺玺网络
  • 我的世界做神器指令网站重庆网站建设模板制作
  • 凡科这样的建站网站可做设计任务的网站
  • 怎样查看网站关键词做机械的有什么网站
  • 昆明岭蓝网站建设公司深圳中小企业网站建设
  • 常见网站模式网站关键词的作用
  • 网站建设的初期目标j2ee 做网站