Live briefing
Everything about Double-ended queue
Abstract data type
In computer science, a double-ended queue, is an abstract data type that serves as a container, with a restricted access to the stored items. As a generalization of both the stack and the queue, the deque may have similar functions as a data buffer: it can be use both as a retainer (queue), or for backtracking (stack). However it offers greater flexibility in managing the order of elements and some algorithms are based on its functionalities. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Double-ended queueA 5-minute orientation
- Skim a recent paper: Double-ended queues with non-Poisson inputs and their effective algorithmsInfluential work since 2022
- Pick up a classic book: Fundamentals of data structures in CThe most-reprinted book on the subject
- Read the landmark paper: The Double-Ended Queue with Bulk Service and Limited Waiting SpaceCited 58 times
- Go sideways: Queue (abstract data type)A closely related topic
- Go sideways: Amortized analysisA closely related topic
📖 Definitions
Noun An abstract list-type data structure where elements can be added to or removed from the front (head) or the back (tail).
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
The Double-Ended Queue with Bulk Service and Limited Waiting Space
A Double-ended Queue with Catastrophes and Repairs, and a Jump-diffusion Approximation
Double-ended queues with impatience
The deap—a double-ended heap to implement double-ended priority queues
Strategic behavior and social optimization in a double-ended queue with gated policy
A Time-Non-Homogeneous Double-Ended Queue with Failures and Repairs and Its Continuous Approximation
Simulation model for extended double-ended queueing
Equilibrium Strategies and Optimal Control for a Double-Ended Queue
🆕 Influential since 2022
Double-ended queues with non-Poisson inputs and their effective algorithms
Supply–demand equilibria and multivariate optimization of social welfare in double-ended queueing systems
Stationary analysis for the fluid flow system regulated by a double-ended queue subject to catastrophic failures and repairs
Stationary analysis for the fluid flow system regulated by a double-ended queue subject to catastrophic failures and repairs – ADDENDUM
Equilibrium Analysis of a Double-Ended Queueing System with Parallel Customers
📚 Books worth reading
Fundamentals of data structures in CEllis Horowitz · 1993
Data structures & algorithms in JavaRobert Lafore · 2003
Data Structures and Algorithms in JavaMichael T. Goodrich, Roberto Tamassia · 2014
Fundamentals of data structures in CEllis Horowitz · 2008
Data structures & other objects using C++M. Main · 2001
What am I doing here?Liz Cowley · 2010
Moscow, 1937Karl Schlögel · 2012
Une lumière au bout du tunnelXavier T. · 2001
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Queue (abstract data type) In computer science, a queue is an abstract data type that serves as an ordered collection of entities. By convention, the end of the queue where elements…
- Amortized analysis In computer science, amortized analysis is a method for analyzing a given algorithm's complexity, or how much of a resource, especially time or memory…
- Peek (data type operation) In computer science, peek is an operation on certain abstract data types, specifically sequential collections such as stacks and queues, which returns…
- Sequence container (C++) In C++, sequence containers or sequence collections refer to a group of container class templates in the standard library that implement storage of data…
- Iacono's working set structure In computer science, Iacono's working set structure is a comparison based dictionary. It supports insertion, deletion and access operation to maintain…
- Heap (data structure) In computer science, a heap is a tree-based data structure that satisfies the heap property: In a max heap, for any given node C, if P is the parent node…
- Priority queue In computer science, a priority queue is an abstract data type similar to a regular queue where each element has an associated priority determining its…
- Stack (abstract data type) In computer science, a stack is an abstract data type that serves as a collection of elements with two main operations: Push, which adds an element to…