STL set容器的一点总结
整理了一下set常用语句,参看这篇http://www.cnblogs.com/BeyondAnyTime/archive/2012/08/13/2636375.html
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
常用语句
#include<set>//包含set的头文件
set<int> p;//定义一个集合容器,不包含重复元素
multiset<int> p;//定义一个集合容器,包含重复元素
p.insert(x);//将x元素加入集合中
p.empty();//判断集合是否为空
p.clear();//清除集合中所有的元素
p.count(x)//返回集合中x的个数
p.size();//返回集合中元素的个数
p.max_size();//返回容器可能包含的元素最大个数
p.erase(x);//
分两种情况==
1
p是set型的集合,那么直接删除掉x
2
p是multiset型的集合,删掉所有与x相等的元素 但是如果集合里面有很多个x,可是只想删除其中的一个x,传递一个指向想删除掉的这个x的iterator,这时候删除的就是这个x,无返回值 详情参见这一篇----http://book.51cto.com/art/201311/419436.htm
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
set的遍历
正向遍历
set<int>::iterator it;//定义迭代器
it=p.begin();//指向集合的开头
it=p.end();//指向集合的末尾
反向遍历
set<int>::reverse_iterator it;//定义反向迭代器
it=rbegin();//返回指向集合中最后一个元素的反向迭代器
it=rend();//返回指向集合中第一个元素的反向迭代器
#include<iostream>
#include<set>
using namespace std; set<int>p; int main()
{
p.insert();
p.insert();
p.insert();
p.insert();
p.insert(); for(set<int>::iterator it=p.begin();it!=p.end();++it)//正向遍历
cout<<*it<<" "; for(set<int>::reverse_iterator it=p.rbegin();it!=p.rend();++it)//反向遍历
cout<<*it<<" ";
}
STL set容器的一点总结的更多相关文章
- STL中的set容器的一点总结(转)
STL中的set容器的一点总结 1.关于set C++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string, list等方便的容器,更重要的是STL封装了许多复杂 ...
- STL之容器适配器queue的实现框架
说明:本文仅供学习交流,转载请标明出处,欢迎转载! 上篇文章STL之容器适配器stack的实现框架已经介绍了STL是怎样借助基础容器实现一种经常使用的数据结构stack (栈),本文介绍下第二种STL ...
- 浅谈C++ STL deque 容器
浅谈C++ STL deque 容器 本篇随笔简单介绍一下\(C++STL\)中\(deque\)容器的使用方法及常见使用技巧. deque容器的概念 \(deque\)的意义是:双端队列.队列是我们 ...
- C++ STL vector容器学习
STL(Standard Template Library)标准模板库是C++最重要的组成部分,它提供了一组表示容器.迭代器.函数对象和算法的模板.其中容器是存储类型相同的数据的结构(如vector, ...
- STL List容器
转载http://www.cnblogs.com/fangyukuan/archive/2010/09/21/1832364.html 各个容器有很多的相似性.先学好一个,其它的就好办了.先从基础开始 ...
- STL的容器算法迭代器的设计理念
1) STL的容器通过类模板技术,实现数据类型和容器模型的分离. 2) STL的迭代器技术实现了遍历容器的统一方法:也为STL的算法提供了统一性. 3) STL的函数对象实现了自定义数据类型的算法运算 ...
- c++复习:STL之容器
1 STL的string 1 String概念 string是STL的字符串类型,通常用来表示字符串.而在使用string之前,字符串通常是用char*表示的.string与char*都可以用来表示字 ...
- stl之容器、迭代器、算法几者之间的关系
转自:https://blog.csdn.net/bobodem/article/details/49386131 stl包括容器.迭代器和算法: 容器 用于管理一些相关的数据类型.每种容器都有它的优 ...
- STL Queue 容器
STL Queue 容器 Queue简介 queue是队列容器,是一种“先进先出”的容器. queue是简单地装饰deque容器而成为另外的一种容器. # ...
随机推荐
- 如何修正导入模型的旋转? How do I fix the rotation of an imported model?
原地址:http://game.ceeger.com/Manual/HOWTO-FixZAxisIsUp.html Some 3D art packages export their models s ...
- 13test02:信用卡校验
/*#include<iostream> using namespace std; void input(); int counter=0,jishu_sum=0,oushu_sum=0, ...
- Chapter 3
1.序列类型可以使用成员操作符in,大小计算函数(len()),分片([]),都可以迭代.Python内置的序列类型:str,list,tuple,bytearray,bytes.标准库中的序列类型: ...
- 有关npm rum的3个简洁技巧
[编者按]本文作者为来自 MongoDB 的 NodeJS 工程师 Valeri Karpov.Valeri 专注于维护常见的 Mongoose ODM,是<Professional Angul ...
- Redis与Memcached的incr/decr差异对比
目前广泛使用的分布式缓存Redis和Memcached均支持对整数型Value值的增减,对应到具体命令中就是incr和decr命令. incr/decr是原子性操作(memcached 1.2.4及以 ...
- POJ 2674
Linear world Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 2448 Accepted: 564 Descr ...
- POJ 1953
//FINBONACI数列 #include <iostream> #define MAXN 100 using namespace std; int _m[MAXN]; int main ...
- Windows 7 常用快捷键 命令
Win+E: 打开新的windows资源浏览器 Win+F:搜索文件或文件夹 Win+R:打开运行窗口 Win + D:显示桌面 Win + M:最小化所有窗口 Ctrl+Shift+N: 新建文件 ...
- tomcat 跨域
http://www.360doc.com/content/14/0920/14/7909375_411017244.shtml http://www.tuicool.com/articles/Znq ...
- 安装wps for linux无法启动
我下载的是deb包,双击安装完之后,打开wps没有反应,重启了一下 计算机也不行. 改从命令行出现如下信息: /opt/kingsoft/wps-office/office6/wps: error w ...