STL-容器的比较与操作

本文详细介绍了STL中的顺序容器,如vector、list、deque,以及关联容器,如map、set、multimap和multiset。讨论了容器之间的关系运算、赋值操作、算术运算符、迭代器的使用,以及如何添加、删除、查找和访问元素。重点讲解了map的键值对特性、set的独特性质,并提到了multimap和multiset允许键的多重映射。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

STL-容器的比较与操作
 设计库的目的是为容器类型提供通用接口。如果两种容器提供相似的操作,则为它们定义的这个操作应该完全相同。例如,所有容器都有返回容器内元素个数的操作,于是所有容器都将操作命名为size,并将size返回值的类型都指定为size_type类型。类似地,算法具有一致的接口。例如,大部分算法都作用在由一对迭代器指定的元素范围上。

1.STL容器分类
顺序容器: 将单一类型元素聚集起来成为容器,然后根据位置来存储和访问这些元素。主要有vector、list、deque(双端队列)。 顺序容器包含顺序 容器适配器: stackqueue priority_queue
关联容器:支持通过键来高效地查找和读取元素。主要有:pair、set、map、multiset、multimapbitset,hash_set,hash_map, hash_multiset, hash_multimap由于顺序容器,顺序容器适配器和关联容器在接口上存在较大的差异,因此分类进行总结。

2.容器比较
vector deque list set multiset map multimap
名称 向量容器 双向队列容器 列表容器 集合 多重集合 映射 多重映射

内部数

据结构

连续存储的数组形式(一端开口的组)

连续或分段连续存储数组(两端

开口的数组)

双向环状链表 红黑树(平衡检索二叉树)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值