std::set作为一个有序集合
来源:互联网 发布:吸血鬼日记 知乎 编辑:程序博客网 时间:2024/06/05 23:52
摘要:std::set作为标准库的一个关联容器,实现内部元素进行了排序,使用这特性可以对一组元素进行插入排序。std::set最初的设计是完成数学中“集合”的概念,它提供的接口也是如此。本文简单地介绍一下这一个标准库容器。
为了使用std::set,我只需要如下:
#include<set>
//定义一个整型数据的集合
std::set<int> set;
//定义一个整型数据的集合
std::set<int> set;
下面我会展示一些简单的使用示例,这些是示例非常简单,首先介绍那个“排序”的用法:
#include<set>
int array[5]={12, 34, 10, 98, 3};
const size_t array_size=sizeof(array)/sizeof(array[0]);
std::set<int> set;
for(size_t i=0; i<array_size; ++i)
{
//把数据插入集合,数据自动排序
set.insert(array[i]);
}
//此时已经排序了,下面依次输出
std::set<int>::const_iterator b=set.begin();
for(; b!=set.end(); ++b)
{
std::cout << *b << '\n';
}
int array[5]={12, 34, 10, 98, 3};
const size_t array_size=sizeof(array)/sizeof(array[0]);
std::set<int> set;
for(size_t i=0; i<array_size; ++i)
{
//把数据插入集合,数据自动排序
set.insert(array[i]);
}
//此时已经排序了,下面依次输出
std::set<int>::const_iterator b=set.begin();
for(; b!=set.end(); ++b)
{
std::cout << *b << '\n';
}
在一般意识中,一个集合并没有太多的操作,所有在STL中,std::set也没有太多操作,它的排序是自动的,我们可以插入一个元素,也可以删除一个元素,也有迭代器。下面简单的示例包括std::set自身的多数的特性:
#include<set>
int array[5]={12, 34, 10, 98, 3};
const size_t array_size=sizeof(array)/sizeof(array[0]);
//一个新的定义容器的方法
std::set<int> set(array, array+array_size);
//插入一个元素
set.insert(23);
//移除一个元素
set.erase(10);
//移除一个元素不在集合中的元素
//此时什么也不做,n作为返回值将会是0
//指明没有元素移除
size_t n=set.erase(11);
//使用迭代器,找到一个元素
std::set<int>::const_iterator result=set.find(98);
std::set<int> other;
//交换两个集合的内容
std::swap(set, other);
//清楚所有的内容
other.clear();
int array[5]={12, 34, 10, 98, 3};
const size_t array_size=sizeof(array)/sizeof(array[0]);
//一个新的定义容器的方法
std::set<int> set(array, array+array_size);
//插入一个元素
set.insert(23);
//移除一个元素
set.erase(10);
//移除一个元素不在集合中的元素
//此时什么也不做,n作为返回值将会是0
//指明没有元素移除
size_t n=set.erase(11);
//使用迭代器,找到一个元素
std::set<int>::const_iterator result=set.find(98);
std::set<int> other;
//交换两个集合的内容
std::swap(set, other);
//清楚所有的内容
other.clear();
std::set很简单,正如多数STL工具一样,但是却可以给我们许多新的感觉。祝大家学习愉快!
0 0
- std::set作为一个有序集合
- C++学习 std::set作为一个有序集合
- 16.c++-std::Set(有序集合)
- redis-有序set集合
- Redis order set 有序集合
- Redis 有序集合(sorted set)
- Redis 有序集合(sorted set)
- Redis 有序集合(sorted set)
- Redis 有序集合(sorted set)
- Redis 有序集合(sorted set)
- Redis 有序集合(sorted set)
- Redis 有序集合(sorted set)
- Redis 有序集合(sorted set)
- Redis 有序集合(sorted set)
- Redis 有序集合(sorted set)
- Redis 有序集合(sorted set)
- redis 有序集合 sorted set
- redis 集合set 与 有序集合sorted set
- 数值积分方法
- SylixOS ARM BSP 文件结构
- 红绿黄染色,红绿个数为偶数
- DOM4J解析XML实例
- pyQT指定窗口截图
- std::set作为一个有序集合
- easyui datagrid 避免二次加载
- Windows server2012 桌面设置
- SylixOS ARM BSP 文件结构
- 【Unity】Shader编程 基础总结
- ORACLE定期清理INACTIVE会话
- 共享微信JSSDK的access_token.json
- Windows 7 默认情况下没有 tftp 和 telnet 命令.
- Android创建快捷方式