std::deque is the C++ implementation of a double-ended queue provided by the STL
std::deque (double-ended queue) is an indexed sequence container that allows fast insertion and deletion at both its beginning and its end. See here for more information.