C++ set使用
C++ set使用
实际上c++ STL中的set是的实现和C++ STL中的map的实现的底层数据结构是一样的,如果我们不在考虑红黑树中的卫星数据,而只是关键字,那么同样不允许key值得重复,那么就变成了set的实现。
下面介绍set的使用方法。
一、构造函数
vector<int> v;
for(int i=;i<;i++){
v.push_back(i);
} set<int> s(v.begin(),v.end());
使用上面的代码,将v容器中的数据copy到了s中
二、insert
可以插入单个键值,也可以插入一个容器
set<int> s;
s.insert(v.begin(),v.end());
三、读数据
这里和map的思路是一样的,在读之前需要判断是否存在
同样是find和count两种方法,这里的用法适合map一样的。
参考文献:
《C++ primer》
随机推荐
- JAVA设计模式之访问者模式
在阎宏博士的<JAVA与模式>一书中开头是这样描述访问者(Visitor)模式的: 访问者模式是对象的行为模式.访问者模式的目的是封装一些施加于某种数据结构元素之上的操作.一旦这些操作需要 ...
- Spark JdbcRDD 简单使用
package org.apache.spark.sql.sources import org.apache.spark.SparkContext import java.sql.{ResultSet ...
- Spring mvc 配置详解
现在主流的Web MVC框架除了Struts这个主力 外,其次就是Spring MVC了,因此这也是作为一名程序员需要掌握的主流框架,框架选择多了,应对多变的需求和业务时,可实行的方案自然就多了.不过 ...
- Lighttpd虚拟主机和多域名的配置
lighttpd是个轻巧的web服务器组件,在linux系统上较为流行,功能能满足一般网站的需求(虚拟主机,伪静态,防盗链等),而跑起来负载却低于apache. 一般网站地址的形式为www.xxx.c ...
- 【Linux】依赖包检查
参考:http://www.cnblogs.com/zc22/p/3197038.html ldd xx.so
- 深入理解JS异步编程四(HTML5 Web Worker)
>Web Workers 是 HTML5 提供的一个javascript多线程解决方案,我们可以将一些大计算量的代码交由web Worker运行而不冻结用户界面. 一:如何使用Worker We ...
- apache-jmeter学习文档
http://www.cnblogs.com/TankXiao/p/4045439.html#sampler
- Hadoop HDFS编程 API入门系列之合并小文件到HDFS(三)
不多说,直接上代码. 代码 package zhouls.bigdata.myWholeHadoop.HDFS.hdfs7; import java.io.IOException;import ja ...
- Reactjs 入门基础(二)
如果我们需要向组件传递参数,可以使用 this.props 对象,实例如下: <body> <div id="example"></div> & ...
- Linux Shell脚本入门--cut命令
Linux Shell脚本入门--cut命令 cut cut 命令可以从一个文本文件或者文本流中提取文本列. cut语法 [root@www ~]# cut -d'分隔字符' -f fields &l ...