Deque
A Deque is a data structure comprised of two queues. This implementation has a front queue, which is a reversed array, and a back queue, which is an array. Operations at either end of the Deque have the same complexity as operations on the end of either array.