STL之deque用法详解

来源:互联网 发布:linux重置root密码忘记 编辑:程序博客网 时间:2024/05/18 00:13

C++ Deque(双向队列):

Deque是一种优化了的、对序列两端元素进行添加和删除操作的基本序列容器。它允许较为快速地随机访问,但它不像vector 把所有的对象保存在一块连续的内存块,而是采用多个连续的存储块,并且在一个映射结构中保存对这些块及其顺序的跟踪。向deque 两端添加或删除元素的开销很小。它不需要重新分配空间,所以向末端增加元素比vector 更有效。实际上,deque 是对vector 和list 优缺点的结合,它是处于两者之间的一种容器。

Deque 的特点:

*  (1) 随机访问方便,即支持[ ] 操作符和vector.at() ,但性能没有vector 好;*  (2) 可以在内部进行插入和删除操作,但性能不及list ;*  (3) 可以在两端进行push 、pop ;*  (4) 相对于verctor 占用更多的内存。

双向队列和向量很相似,但是它允许在容器头部快速插入和删除(就像在尾部一样)。

这里写图片描述

0 0