Double-ended queues (or deques) are like C++ Vectors, except that they allow fast insertions and deletions at the beginning (as well as the end) of the container.
| Constructors | create deques and initialize them with some data |
| Operators | compare, assign, and access elements of a deque |
| assign | assign elements to a deque |
| at | returns an element at a specific location |
| back | returns a reference to last element of a deque |
| begin | returns an iterator to the beginning of the deque |
| clear | removes all elements from the deque |
| empty | true if the deque has no elements |
| end | returns an iterator just past the last element of a deque |
| erase | removes elements from a deque |
| front | returns a reference to the first element of a deque |
| insert | inserts elements into the deque |
| max_size | returns the maximum number of elements that the deque can hold |
| pop_back | removes the last element of a deque |
| pop_front | removes the first element of the deque |
| push_back | add an element to the end of the deque |
| push_front | add an element to the front of the deque |
| rbegin | returns a reverse_iterator to the end of the deque |
| rend | returns a reverse_iterator to the beginning of the deque |
| resize | change the size of the deque |
| size | returns the number of items in the deque |
| swap | swap the contents of this deque with another |