SET 是个有序表!他会根据INSERT的数值自动排序!

SET里面不可能出现相同的元素!SET在insert的时候会排重的!

SET本质上是一种树结构,在检索上比链表快,插入比数组方便,但是不允许重复!

(1)

set_difference(MyTestContain.begin(),MyTestContain.end(),MyTestContain2.begin(),MyTestContain2.end(),
                   insert_iterator<set<string> >(MyTestContain3,MyTestContain3.begin())
                   );

insert_iterator<set<string> >

<string> 后面的空格一定要打!

insert_iterator<set<string> >(MyTestContain3,MyTestContain3.begin()) 只能这么将合并后的集合插入新的集合!

(2)lowerbound 和 upperbond

copy(MyTestContain3.lower_bound("a"),MyTestContain3.upper_bound("u"),myout);

剔除<"u" 和>="a" 的。。。。。???半包围!

(3) 访问元素:

MyPairSet::iterator pr;
cout<<endl<<"MyPairSet:"<<endl;
for(pr=MyPairContain.begin();pr!=MyPairContain.end();pr++)
{
MyPair Pr2(*pr);                //特别注意这句话:MyPairSet::iterator 和 MyPairSet * 是不能互相转换的,但是他们的*都是MyPairSet ,所以不能把迭代器转换为指针,只能取内容以后转换为元素。
cout<<Pr2.first<<"_"<<Pr2.second<<" ;";

}

(4) 搜索元素: 和上面一样,返回迭代器

MyPair Pr3;
Pr3=MyPair(*MyPairContain.find(Pr2));
cout<<Pr3.first<<"_"<<Pr3.second;

(5) equal_range  定位器

第一个 >= 给定关键字的元素

第一个 > 给定关键字的元素

pair <MyPairSet::const_iterator ,MyPairSet::const_iterator> IterPair;

MyPair ps=*MyPairContain.begin();

IterPair=MyPairContain.equal_range(ps);

cout<<endl<<"the pair is"<<endl;

cout<<((MyPair)(* (IterPair.first))).first<<"_"<<((MyPair)(* (IterPair.first))).second<<endl;

cout<<((MyPair)(* (IterPair.second))).first<<"_"<<((MyPair)(* (IterPair.second))).second<<endl;

容器 set的更多相关文章

  1. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  2. 网页提交中文到WEB容器的经历了些什么过程....

    先准备一个网页 <html><meta http-equiv="Content-Type" content="text/html; charset=gb ...

  3. [Spring]IoC容器之进击的注解

    先啰嗦两句: 第一次在博客园使用markdown编辑,感觉渲染样式差强人意,还是github的样式比较顺眼. 概述 Spring2.5 引入了注解. 于是,一个问题产生了:使用注解方式注入 JavaB ...

  4. 深入理解DIP、IoC、DI以及IoC容器

    摘要 面向对象设计(OOD)有助于我们开发出高性能.易扩展以及易复用的程序.其中,OOD有一个重要的思想那就是依赖倒置原则(DIP),并由此引申出IoC.DI以及Ioc容器等概念.通过本文我们将一起学 ...

  5. Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境

    首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...

  6. JS判断鼠标进入容器方向的方法和分析window.open新窗口被拦截的问题

    1.鼠标进入容器方向的判定 判断鼠标从哪个方向进入元素容器是一个经常碰到的问题,如何来判断呢?首先想到的是:获取鼠标的位置,然后经过一大堆的if..else逻辑来确定.这样的做法比较繁琐,下面介绍两种 ...

  7. docker4dotnet #2 容器化主机

    .NET 猿自从认识了小鲸鱼,感觉功力大增.上篇<docker4dotnet #1 前世今生&世界你好>中给大家介绍了如何在Windows上面配置Docker for Window ...

  8. 深入分析Spring 与 Spring MVC容器

    1 Spring MVC WEB配置 Spring Framework本身没有Web功能,Spring MVC使用WebApplicationContext类扩展ApplicationContext, ...

  9. Set容器--HashSet集合

    Set容器特点: ①   Set容器是一个不包含重复元素的Collection,并且最多包含一个null元素,它和List容器相反,Set容器不能保证其元素的顺序; ②   最常用的两个Set接口的实 ...

  10. 深入理解Spring--动手实现一个简单的SpringIOC容器

    接触Spring快半年了,前段时间刚用Spring4+S2H4做完了自己的毕设,但是很明显感觉对Spring尤其是IOC容器的实现原理理解的不到位,说白了,就是仅仅停留在会用的阶段,有一颗想读源码的心 ...

随机推荐

  1. Activity之间切换使用系统内置动画

    例如: startActivity(intent); overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out) ...

  2. [转]Android读写文件

    一.       从resource中的raw文件夹中获取文件并读取数据(资源文件只能读不能写) String res = ""; try{ InputStream in = ge ...

  3. JavaScript 实现数组的foreach

    Array.prototype.forEach = function (action) { for (var i = 0; i < this.length; i++) { action(this ...

  4. Linux系统编程(30)—— socket编程之TCP/IP协议

    在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别.就好像圣经中上帝打乱了各地人的口音,让他们无法合作一样.计算机使用者意识到,计算机 ...

  5. Apache Hadoop最佳实践和反模式

    摘要:本文介绍了在Apache Hadoop上运行应用程序的最佳实践,实际上,我们引入了网格模式(Grid Pattern)的概念,它和设计模式类似,它代表运行在网格(Grid)上的应用程序的可复用解 ...

  6. MyBatis的简单操作

    这里将的是简单的增.删.改.查等基本操作 首先创建java项目,导入相应的依赖包,这里可以参考上一篇博客 1.添加数据 在jike.book.pojo包中,新建java类 JiKeUser.java: ...

  7. JS(四)

    JS的属性好多,方法好多,一下子塞进来真的需要时间消化,很多东西都是当时记得很清楚,但忘得很快,看来需要经常去复习,主要是感觉后面一点的练习题好像少了点,所以就显得不是很熟练. 1.About Tim ...

  8. js 截取字符串

    转:http://blog.csdn.net/dotnet25/article/details/8331959 字符串:var s = "1,2,3,4,5," 目标:删除最后一个 ...

  9. Android Clipboard(复制/剪贴板)

    Android提供的剪贴板框架,复制和粘贴不同类型的数据.数据可以是文本,图像,二进制流数据或其它复杂的数据类型. Android提供ClipboardManager.ClipData.Item和Cl ...

  10. CentOS6.3(64位)下安装Oracle11gR2(64)服务器

    安装环境 Linux服务器:Centos6.3 64位 Oracle服务器:Oracle11gR2 64位 系统要求 1.Linux安装Oracle系统要求 系统要求 说明 内存 必须高于1G的物理内 ...