Heim  >  Artikel  >  Java  >  So verwenden Sie die Deque-Funktion in Java für Deque-Operationen

So verwenden Sie die Deque-Funktion in Java für Deque-Operationen

PHPz
PHPzOriginal
2023-06-26 16:20:452426Durchsuche

Double-Ended Queue (Deque) ist eine relativ komplexe Datenstruktur mit Warteschlangen- und Stapeleigenschaften. Es unterstützt alle Operationen von Warteschlangen und Stapeln und kann Elemente am Anfang und Ende der Warteschlange hinzufügen oder löschen. In Java ist Deque eine Schnittstelle mit zwei Implementierungsklassen: ArrayDeque und LinkedList.

In diesem Artikel wird erläutert, wie Sie mit der Deque-Funktion in Java doppelseitige Warteschlangenoperationen ausführen, einschließlich der Erstellung von Deque, dem Hinzufügen von Elementen, dem Entfernen von Elementen, Kopf- und Endoperationen usw.

1. Deque erstellen

Um ein Deque-Objekt in Java zu erstellen, können Sie die Implementierungsklasse ArrayDeque oder LinkedList verwenden. Wenn die Anzahl der Elemente bekannt ist und die Leistungsanforderungen hoch sind, ist es besser, ArrayDeque zu verwenden. Wenn die Anzahl der Elemente unsicher ist oder Elemente häufig in der Mitte eingefügt oder gelöscht werden müssen, ist es besser, LinkedList zu verwenden.

Das Folgende ist der Code zum Erstellen eines Deque-Objekts mit dem Namen deque:

Deque<String> deque = new ArrayDeque<String>(); // 使用ArrayDeque实现类创建
Deque<Integer> deque = new LinkedList<Integer>(); // 使用LinkedList实现类创建

2. Elemente hinzufügen

Das Hinzufügen von Elementen ist eine der Grundoperationen einer doppelendigen Warteschlange. In Deque können Elemente am Anfang oder am Ende der Warteschlange hinzugefügt werden. Verwenden Sie zum Hinzufügen die Methoden addFirst() bzw. addLast().

Verwenden Sie addFirst(), um Elemente hinzuzufügen:

deque.addFirst("element");

Verwenden Sie addLast(), um Elemente hinzuzufügen:

deque.addLast("element");

Wenn die Deque während des Additionsprozesses voll ist, löst addFirst() eine IllegalStateException aus.

3. Elemente entfernen

Das Entfernen von Elementen ist auch eine der Grundoperationen von doppelseitigen Warteschlangen. In Deque können Sie auch Elemente aus dem Kopf oder Ende der Warteschlange entfernen. Verwenden Sie zum Entfernen die Methoden „removeFirst()“ bzw. „removeLast()“.

Verwenden Sie „removeFirst()“, um Elemente zu entfernen:

String element = deque.removeFirst();

Verwenden Sie „removeLast()“, um Elemente zu entfernen:

String element = deque.removeLast();

Wenn die Warteschlange leer ist, löst der Aufruf der oben genannten Methode eine NoSuchElementException-Ausnahme aus.

4. Elemente bestimmen

Manchmal müssen wir bestimmen, ob ein Deque ein bestimmtes Element enthält oder was das erste und letzte Element sind. Zu diesem Zeitpunkt können Sie element (), peek () und andere Methoden verwenden.

Verwenden Sie element(), um das erste Element des Teams abzurufen:

String firstElement = deque.element(); // 队首元素

Verwenden Sie peek(), um das erste Element des Teams abzurufen:

String firstElement = deque.peek(); // 队首元素

Wenn die Warteschlange leer ist, löst der Aufruf der oben genannten Methode eine NoSuchElementException-Ausnahme aus.

Verwenden Sie peekFirst(), um das erste Element des Teams abzurufen:

String firstElement = deque.peekFirst(); // 队首元素

Verwenden Sie peekLast(), um das letzte Element des Teams abzurufen:

String lastElement = deque.peekLast(); // 队尾元素

5. Durchqueren Sie die Elemente

Wenn Sie die Elemente im Deque durchqueren, Sie kann Iterator-, foreach- oder Lambda-Ausdrücke verwenden.

Traverse mit Iterator:

Iterator<String> iterator = deque.iterator(); // 获取Iterator对象
while (iterator.hasNext()) { // 依次输出元素
    System.out.println(iterator.next());
}

Traverse mit foreach:

for (String element : deque) { // 依次输出元素
    System.out.println(element);
}

Traverse mit Lambda-Ausdruck:

deque.forEach(element -> System.out.println(element)); // 依次输出元素

Zusammenfassung

Deque ist die Schnittstelle einer doppelendigen Warteschlange in Java, die alle Operationen von Warteschlange und Stapel bereitstellt und kann Elemente werden am Anfang der Warteschlange hinzugefügt oder gelöscht, und Elemente können am Ende der Warteschlange hinzugefügt oder gelöscht werden. In Java verfügt Deque über zwei Implementierungsklassen: ArrayDeque und LinkedList, die in verschiedenen Szenarien verwendet werden.

In diesem Artikel wird erläutert, wie Sie mit der Deque-Funktion in Java doppelseitige Warteschlangenoperationen ausführen, einschließlich der Erstellung von Deque, dem Hinzufügen von Elementen, dem Entfernen von Elementen, Kopf- und Schwanzoperationen und dem Durchlaufen von Elementen. Auf dieser Website finden Sie weitere Artikel, die Java-Anfängern helfen sollen.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Deque-Funktion in Java für Deque-Operationen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn