【STL】STL - 简介
STL简介
C++ STL(Standard Template Libiary标准模板库)是通用类模板和算法的集合,它提供了一些标准的数据结构的实现,如queues(队列),list(链表)和stack(栈)等。
C++ STL提供给程序员三类数据结构的实现:
序列容器:
-
vector:从后面快速的插入与删除,直接访问任何元素
vector是一段连续的内存块,适合高效地随机存储
-
deque:从前面或后面快速的插入与删除,直接访问任何
deque是多个连续的内存块,
-
list:双向链表,从任何地方快速插入与删除
list是一个双向链表,可以任何一个元素都不连续,每一个元素都有一个指针指向后一个元素,也有一个指针指向前一个元素,所以list的对插入、删除元素性能是最好的,而查询性能比较差,适合大量地插入和删除操作而不关心随机存取的需求
容器适配器:
-
stack:后进先出
-
queue:先进先出
-
priority_queue:最高优先级元素总是第一个出列
关联容器:
-
set:快速查找,不允许重复值
-
multiset:快速查找,允许重复值
-
map:一对多映射,基于关键字快速查找,不允许重复值
-
multimap:一对多映射,基于关键字快速查找,允许重复值
引用文章:
C++_标准模板库(STL)