, or double-ended queue
is a data structure
which unites the properties of a queue
and a stack
. Like the stack, items can be pushed
into the deque; once inserted into the deque the last item pushed in may be extracted from one side (popped
, as in a stack), and the first item pushed in may be pulled out of the other side (as in a queue).