ABSTRACT
A double-ended priority queue (DEPQ) is a collection of zero or more elements. Each element has a priority or value. The operations performed on a double-ended priority queue are:
getMin( ) …return element with minimum priority
getMax( ) …return element with maximum priority
put(x) …insert the element x into the DEPQ
removeMin( ) …remove an element with minimum priority and return this element
removeMax( ) …remove an element with maximum priority and return this element