11.10.2013 Aufrufe

Algorithmen und Datenstrukturen Vorlesungsskript WS/SS 99-00

Algorithmen und Datenstrukturen Vorlesungsskript WS/SS 99-00

Algorithmen und Datenstrukturen Vorlesungsskript WS/SS 99-00

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

8. Gr<strong>und</strong>legende <strong>Datenstrukturen</strong><br />

}<br />

public void enqueue(Object element){<br />

Node n = new Node(element,null);<br />

if (isEmpty()){ head = n; tail = n ; }<br />

else<br />

{ tail.setNext(n);<br />

};<br />

tail = n; size++;<br />

}<br />

8.3. Doppelt verkettete Listen<br />

Motivation: Deque (sprich “Deck”) für Double-ended queue<br />

Generalisierung von Stack <strong>und</strong> Queue<br />

Operationen: insertFirst, insertLast, removeFirst,<br />

removeLast, first, last, size, isEmpty<br />

Realisierung mit einfach verketteten Listen möglich: aber nicht mehr Ç für<br />

alle Operationen!<br />

daher: Implementierung mit doppelt verketteten Listen<br />

Deque-Knoten: neben Zeiger next auch Zeiger prev<br />

Knoten einer doppelt verketteten Liste<br />

prev<br />

element<br />

next<br />

Alpha<br />

Realisierung einer Deque über doppelt verketteter Liste<br />

Problem: Spezialfälle bei leerer Liste, einelementiger Liste<br />

Daher: zwei Verwaltungs-Knoten ohne Daten header <strong>und</strong> trailer<br />

Implementierung siehe [GT98], Seite <strong>99</strong>, Code Fragment 3.14<br />

160

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!