容器库
来自cppreference.com
< cpp
容器库是类模板与算法的汇集,允许程序员简单地访问常见数据结构,例如队列、链表和栈。有三类容器——顺序容器、关联容器和无序关联容器——每种都被设计为支持不同组的操作。
容器管理为其元素分配的存储空间,并提供直接或间接地通过迭代器(拥有类似指针属性的对象)访问它们的函数。
大多数容器拥有至少几个常见的成员函数,并共享功能。特定应用的最佳容器不仅依赖于提供的功能,还依赖于对于不同工作量的效率。
目录 |
[编辑] 顺序容器
顺序容器实现能按顺序访问的数据结构。
(C++11 起) |
静态的相接数组 (类模板) |
动态的相接数组 (类模板) | |
双端队列 (类模板) | |
(C++11 起) |
单链表 (类模板) |
双链表 (类模板) |
[编辑] 关联容器
关联容器实现能快速查找( O(log n) 复杂度)的数据结构。
唯一键的集合,按照键排序 (类模板) | |
键值对的集合,按照键排序,键是唯一的 (类模板) | |
键的集合,按照键排序 (类模板) | |
键值对的集合,按照键排序 (类模板) |
[编辑] 无序关联容器
无序关联容器提供能快速查找(均摊 O(1) ,最坏情况 O(n) 的复杂度)的无序(哈希)数据结构。
(C++11 起) |
唯一键的集合,按照键生成散列 (类模板) |
(C++11 起) |
键值对的集合,按照键生成散列,键是唯一的 (类模板) |
(C++11 起) |
键的集合,按照键生成散列 (类模板) |
(C++11 起) |
键值对的集合,按照键生成散列 (类模板) |
[编辑] 容器适配器
容器适配器提供顺序容器的不同接口。
堆栈适配器(LIFO) (类模板) | |
改写容器来提供队列(FIFO数据结构) (类模板) | |
改写容器来提供优先级队列 (类模板) |
[编辑] 迭代器非法化
本节未完成 |
线程安全
|
(C++11 起) |
[编辑] 成员函数表
- C++03 起存在的函数 | |
- C++11 起存在的函数 | |
- C++17 起存在的函数 |
(此表的 PDF 版本可用于 File:container-library-overview-2012-12-27.pdf 。)