Suche…


Einführung

Ein Deque ist eine lineare Sammlung, die das Einfügen und Entfernen von Elementen an beiden Enden unterstützt.

Der Name deque ist eine Abkürzung für "double ended queue" und wird normalerweise als "deck" ausgesprochen.

Bei den meisten Deque-Implementierungen sind der Anzahl der Elemente, die sie enthalten können, keine festen Grenzen gesetzt, aber diese Schnittstelle unterstützt kapazitätsbeschränkte Deques sowie solche, die keine feste Größenbegrenzung aufweisen.

Die Deque-Schnittstelle ist ein umfangreicherer abstrakter Datentyp als sowohl Stack als auch Queue, da sie gleichzeitig Stacks und Warteschlangen implementiert

Bemerkungen

Generics können mit Deque verwendet werden.

Deque<Object> deque = new LinkedList<Object>();

Wenn ein Deque als Warteschlange verwendet wird, führt dies zu einem FIFO-Verhalten (First In In First Out).

Deques können auch als LIFO-Stapel (Last-In-First-Out) verwendet werden.

Weitere Informationen zu Methoden finden Sie in dieser Dokumentation.

Elemente zum Deque hinzufügen

Deque deque = new LinkedList();

//Adding element at tail
deque.add("Item1");

//Adding element at head 
deque.addFirst("Item2");

//Adding element at tail 
deque.addLast("Item3");

Elemente aus Deque entfernen

//Retrieves and removes the head of the queue represented by this deque
Object headItem = deque.remove();

//Retrieves and removes the first element of this deque.
Object firstItem = deque.removeFirst();

//Retrieves and removes the last element of this deque.
Object lastItem = deque.removeLast();

Element abrufen ohne zu entfernen

//Retrieves, but does not remove, the head of the queue represented by this deque
Object headItem = deque.element();

//Retrieves, but does not remove, the first element of this deque.
Object firstItem = deque.getFirst();

//Retrieves, but does not remove, the last element of this deque.    
Object lastItem  = deque.getLast();

Iteration durch Deque

//Using Iterator
Iterator iterator = deque.iterator();
while(iterator.hasNext(){
  String Item = (String) iterator.next();
}

//Using For Loop
for(Object object : deque) {
    String Item = (String) object;
}


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow