STL(Standard Template Library)是 C++ 标准库的一部分,提供了丰富的容器、算法、迭代器和函数对象等组件。以下是 STL 中一些常见的容器和它们的详细介绍、适用场景及性能对比:
1. std::vector
介绍:
-
std::vector是一个动态数组,支持随机访问。 -
内部使用连续的内存块存储元素,因此支持高效的随机访问和尾部插入/删除操作。
适用场景:
-
需要频繁随机访问元素。
-
需要在尾部进行高效的插入和删除操作。
性能:
-
随机访问:O(1)
-
尾部插入/删除:O(1)(平均情况)
-
中间插入/删除:O(n)
2. std::list
介绍:
-
std::list是一个双向链表,支持高效的插入和删除操作。 -
内部使用节点存储元素,节点之间通过指针连接。
适用场景:
-
需要频繁在中间插入和删除元素。
-
不需要随机访问元素。
性能:
-
随机访问:O(n)
-
插入/删除:O(1)(在已知位置)
3. std::deque

最低0.47元/天 解锁文章
1336

被折叠的 条评论
为什么被折叠?



