unordered_set

#include <unordered_set>

存储已插入元素的个数, 未插入过的为0

unordered_set a;
a.insert(3);
a[3] == 1;
a.insert(3);
a[3] == 2;

无序集(unorder sets)是一种不按特定顺序存储唯一元素的容器,允许根据元素的值快速检索单个元素。

在unordered_set中,元素的值同时也是唯一标识它的键。键是不可变的,因此,unordered_set中的元素在容器中不能被修改,但是它们可以被插入和删除。

在内部,unordered_set中的元素并不按照任何特定的顺序排序,而是根据它们的散列值组织到桶中,从而允许根据它们的值直接快速访问单个元素(平均时间复杂度为常数)。

与set容器相比,Unordered_set容器通过键访问单个元素的速度更快,尽管它们通常在通过元素的子集进行范围迭代时效率较低。(set是有序的)

容器的属性

  1. 关联性
    关联容器中的元素是通过它们的键引用的,而不是通过它们在容器中的绝对位置引用的。

  2. 无序性
    无序容器使用哈希表组织元素,允许通过键快速访问元素。

  3. 具有set特性
    元素的值也是用来标识它的键。即value就是key。

  4. 独一无二的key
    容器中没有两个元素具有相同的键。

  5. Allocator-aware
    容器使用一个allocator对象来动态地处理其存储需求。即当你插入或者删除数据时,容器会自动处理空间。

函数用法

unorder_set first容器定义

first.empty()判断容器是否是空,是空返回true,反之为false

first.size()返回容器大小

first.maxsize()返回容器最大尺寸

first.begin()返回迭代器开始

first.end()返回迭代器结束

first.find(value)返回value在迭代器的位置

first.count(key)返回key在容器的个数

first.insert(value)将value插入到容器中

first.erase(key)通过key删除

first.clear()清空容器

  • 9
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值