C++ STL deque容器是什么?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2053个文字,预计阅读时间需要9分钟。
deque是双端队列的简称,也称为双端数组容器。在前章节中,我们已学习过vector容器,值得提出的是,deque容器和vector容器有许多相似之处,例如:deque容器也擅长在有序序列中操作。
deque 是 double-ended queue 的缩写,又称双端队列容器。前面章节中,我们已经系统学习了 vector 容器,值得一提的是,deque 容器和 vecotr 容器有很多相似之处,比如:
-
deque 容器也擅长在序列尾部添加或删除元素(时间复杂度为
O(1)),而不擅长在序列中间添加或删除元素。 - deque 容器也可以根据需要修改自身的容量和大小。
和 vector 不同的是,deque 还擅长在序列头部添加或删除元素,所耗费的时间复杂度也为常数阶
O(1)。并且更重要的一点是,deque 容器中存储元素并不能保证所有元素都存储到连续的内存空间中。deque 容器以模板类 deque<T>(T 为存储元素的类型)的形式在 <deque> 头文件中,并位于 std 命名空间中。因此,在使用该容器之前,代码中需要包含下面两行代码:当需要向序列两端频繁的添加或删除元素时,应首选 deque 容器。
#include <deque> using namespace std;
注意,std 命名空间也可以在使用 deque 容器时额外注明,两种方式都可以。
本文共计2053个文字,预计阅读时间需要9分钟。
deque是双端队列的简称,也称为双端数组容器。在前章节中,我们已学习过vector容器,值得提出的是,deque容器和vector容器有许多相似之处,例如:deque容器也擅长在有序序列中操作。
deque 是 double-ended queue 的缩写,又称双端队列容器。前面章节中,我们已经系统学习了 vector 容器,值得一提的是,deque 容器和 vecotr 容器有很多相似之处,比如:
-
deque 容器也擅长在序列尾部添加或删除元素(时间复杂度为
O(1)),而不擅长在序列中间添加或删除元素。 - deque 容器也可以根据需要修改自身的容量和大小。
和 vector 不同的是,deque 还擅长在序列头部添加或删除元素,所耗费的时间复杂度也为常数阶
O(1)。并且更重要的一点是,deque 容器中存储元素并不能保证所有元素都存储到连续的内存空间中。deque 容器以模板类 deque<T>(T 为存储元素的类型)的形式在 <deque> 头文件中,并位于 std 命名空间中。因此,在使用该容器之前,代码中需要包含下面两行代码:当需要向序列两端频繁的添加或删除元素时,应首选 deque 容器。
#include <deque> using namespace std;
注意,std 命名空间也可以在使用 deque 容器时额外注明,两种方式都可以。

