faecher:informatik:oberstufe:adt:queue:enqueue:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
faecher:informatik:oberstufe:adt:queue:enqueue:start [11.10.2021 18:24] – [Fall a) Die Schlange ist leer] Mareike Nutzfaecher:informatik:oberstufe:adt:queue:enqueue:start [11.10.2021 18:43] (aktuell) – [Fall b) Die Schlange ist nicht leer] Mareike Nutz
Zeile 44: Zeile 44:
  
 ===== Fall b) Die Schlange ist nicht leer ===== ===== Fall b) Die Schlange ist nicht leer =====
 +
 +Um ein Element an eine nicht leere Schlange anzuhängen geht man folgendermaßen vor:
 +
 +  * Zuerst wird wieder ein neuer Knoten erzeugt. Dieser besteht aus dem Inhaltsobjekt und dem Zeiger auf den nächsten Knoten, dieser wird bei der Instanziierung des Knotenobjekts auf ''null'' gesetzt.
 +  * Dann wird ''next'' des Knotens, auf den ''tail'' zeigt auf den neuen Knoten gesetzt.
 +  * Zum Schluss muss ''tail'' ebenfalls auf den neuen Knoten zeigen und entsprechend gesetzt werden.
 +
 +Das folgende Bild veranschaulicht die Situation: schwarz gestrichelt vor dem anhängen des neuen Knotens, grün danach:
 +
 +{{ :faecher:informatik:oberstufe:adt:queue:enqueue:enqu2.drawio.png |}}
 +
 +----
 +
 +{{:aufgabe.png?nolink  |}}
 +=== (A3) enqueue für den Fall b) ===
 +
 +Füge in der ''enqeue''-Methode im else-Zweig der Abfrage, ob die Schlange leer ist die folgende Funktionalität ein: 
 +
 +  * Erzeuge einen neuen Knoten mit passenden Parametern
 +  * Setze ''next'' des bislang letzten Knotens sowie ''tail'' der Schlange passend
 +
 +Teste deine Methode und überprüfe die Funktionalität mit dem BlueJ-Inspektor. Du solltest nun beliebig Elemente an deine Schlange anhängen können. Überprüfe, ob ''head'' und ''tail'' der Schlange immer passend gesetzt sind. Bewege dich von Knoten zu Knoten durch die Schlange
 +----
  • faecher/informatik/oberstufe/adt/queue/enqueue/start.1633976675.txt.gz
  • Zuletzt geändert: 11.10.2021 18:24
  • von Mareike Nutz