Dieser Artikel beschreibt die Array -Implementierungsmethode der bidirektionalen Schleifenwarteschlangen von Java -Datenstrukturen und -algorithmen. Teilen Sie es für Ihre Referenz wie folgt weiter:
Es sollte beachtet werden, dass ich diesen Algorithmus nicht getestet habe. Die hier angegebene Algorithmus-Idee entspricht dem Pseudo-Code, sodass sie nur als Referenz verwendet werden kann!
Paketquelle; öffentliche Klasse Deque {private int maxSize; privat int links; Privat int richtig; private int nitems; privat lang [] mydequer; // Constructor Public Deque (int maxSize) {this.maxSize = maxSize; this.myDequ = new Long [this.maxSize]; this.nitems = 0; this.left = this.maxSize; this.right = -1; } // eine Nummer in die linke Seite einfügen public void Insertleft (lang n) {if (this.left == 0) this.left = this.maxSize; this.myDequ [-this.left] = n; this.nitems ++; } // eine Nummer in die rechte Seite einfügen public void Insertright (lang n) {if (this.right == this.maxSize -1) this.right = -1; this.myDequ [++ this.Right] = n; this.nitems ++; } // aus links public long removeleft () {long temp = this.myDequ [this.left ++]; if (this.left == this.maxSize) this.left = 0; this.nitems--; Temperatur zurückgeben; } // Entfernen Sie von der rechten public long remveright () {long temp = this.myDequ [this.Right--]; if (this.left ==-1) this.left = this.maxSize-1; this.nitems--; Temperatur zurückgeben; } // true, wenn Deque leer ist, public boolean isEmpty () {return (this.nitems == 0); } // Rückgabegröße des Deque public int size () {return this.nitems; }}PS: Bidirektionale Schleifenwarteschlangen sind von großem Nutzen. Sie können als gewöhnliche Warteschlangen oder als Stapel verwendet werden!
Für weitere Informationen zu Java -Algorithmen können Leser, die an dieser Website interessiert sind, die Themen "Java -Datenstruktur und Algorithmus -Tutorial", "Zusammenfassung der Java -Operation DOM -Knoten -Tipps", "Zusammenfassung der Java -Datei- und Verzeichnisoperationstipps" und "Zusammenfassung der Java -Cache -Tipps" anzeigen
Ich hoffe, dieser Artikel wird für Java -Programme aller hilfreich sein.