set的基本使用
构造一个集合
现在我们来构造一个集合。 C++ 中直接构造一个 set的语句为: sets。这样我们定义了一个名为 s的、储存 T类型数据的 集合,其中 T是集合要储存的数据类型。初始的时候 s是空集合。
插入元素
C++ 中用 insert()方法向集合中插入一个新的元素。注意如果集合中已经存在了某个元素,再次 插入不会产生任何效果,集合中是不会出现重复元素的。
删除元素
C++ 中通过 erase()方法删除集合中的一个元素,如果集合中不存在这个元素,不进行任何操作。
查找元素
C++ 中如果你想知道某个元素是否在集合中出现,你可以直接用 count()方法。如果集合中存在我 们要查找的元素,返回 1,否则会返回 0。
遍历元素
C++ 通过迭代器可以访问集合中的每个元素,迭代器就好比指向集合中的元素的指针。
清空
C++ 和 Java 中都只需要调用 clear()方法就可清空 set或者 HashSet。
C++ set 方法总结
方法 功能
insert 插入一个元素
erase 删除一个元素
count 判断元素是否在 set中
size 获取元素个数
clear 清空
代码
#include <set>
#include <string>
#include <stdio.h>
using namespace std;
int main() {
set<string> country; // {}
country.insert("China"); // {"China"}
country.insert("America"); // {"China", "America"}
country.insert("France"); // {"China", "America", "France"}
country.erase("America"); // {"China", "France"}
country.erase("England"); // {"China", "France"}如果集合中不存在这个元素,不进行任何操作。
if (country.count("China")) {
printf("China belong to country");
}
for (set<string>::iterator it = country.begin(); it != country.end(); ++it) {
cout << (*it) << endl;
}//遍历set
return ;
}
随机推荐
- Android基础控件ScrollView滚动条的使用
1.简介 ScrollView是一个FrameLayout的容器,不过在他的基础上添加了滚动,允许显示的比实际多的内容!另外,只能够往里面放置一个子元素,可以是单一的组件,又或者一个布局包裹着的复杂的 ...
- java多线程编程建议
多线程编程建议 1,将应用设计成支持多线程并发,可提高性能 2,编写多线程程序,首先保证它是正确的,其次再考虑性能 3,同步处理的开销大于非同步处理,如果可能,尽量使用非同步处理 4,避免多个共享变量 ...
- 07_jQuery对象初识(五)事件(非常重要)
1. 目前为止学过的绑定事件的方式 1. 在标签里面写 onclick=foo(this); 2. 原生DOM的JS绑定 DOM对象.onclick=function(){...} 3. jQuery ...
- day71test
目录 练习: settings.py views.py: exception.py urls.py 练习: 视图类渲染,解析, 异常配置: 作业: 1..简单过过请求模块的源码流程,建立一个视图类,完 ...
- js 属性的遍历
引自:http://es6.ruanyifeng.com/#docs/object 属性的遍历 ES6 一共有5种方法可以遍历对象的属性. (1)for...in for...in循环遍历对象自身的和 ...
- 修改linux命令行的提示符PS1
# If not running interactively, don't do anything [ -z "$PS1" ] && return # check ...
- 【转】 解释下浏览器是如何判断元素是否匹配某个 CSS 选择器?
先产生一个元素集合,然后从后往前判断: 浏览器先产生一个元素集合,这个集合往往由最后一个部分的索引产生(如果没有索引就是所有元素的集合).然后向上匹配,如果不符合上一个部分,就把元素从集合中删除,直到 ...
- MATLAB---fopen、fprintf函数
1 概述 fopen()是个将数据按指定格式读入到matlab中的函数. fprintf()是个将数据按指定格式写入到文本文件中的函数. 2 用法 2.1 fopen函数 matlab中fopen函数 ...
- java内部类和静态内部类
看代码理解内部类,局部内部类和静态内部类 内部类代码: public class InnerTest { private static String name; private int age; pu ...
- mybatis框架学习:
一.什么是框架 它是我们软件开发中的一套解决方案,不同的框架解决的是不同的问题 使用框架的好处: 框架封装了很多的细节,使开发者可以使用极简的方式实现功能 大大提高开发效率 二.三层框架 表现层: 用 ...