Inhaltsverzeichnis

Anhängen eines neuen Listenknotens

Beim Anhängen eines weiteren Knotens an die Liste sind zwei Fälle zu unterscheiden:

  1. Die Liste ist leer
  2. Die Liste ist nicht leer

Liste leer

Wenn die Liste Leer ist, ist der Vorgang schnell beschrieben, eine Veranschaulichung findet sich im Diagramm unten.

(A1) "append" für die leere Liste

Liste nicht leer

Das folgende Objektdiagramm veranschaulicht die Schritte, die beim Anhängen eines neuen Knotens an eine nicht leere Liste auszuführen sind.

(A2)

Schreibe als Merksatz stichwortartig nieder, was beim Anhängen eines neuen Knotens alles passieren muss.

Bewegen in der Liste

Ein konkretes Problem stellt sich noch in Schritt 2 des Ablaufs zum Einfügen eines neuen Knotens: Wie können wir uns durch die Liste bewegen, wenn das Listenobjekt selbst nur die Referenz auf den ersten Knoten kennt?

Hier gehen wir ähnlich vor wie bei der Erhöhung einer Zählvariablen:

Zähler Liste
// Neuer Zähler
int i=0;
// Zählen bis 100
while (i < 100) {
   i++;
}
// Ende der Zahlenreihe erreicht, i = 100
// Knotenzeiger erzeugen, auf first setzen
Node<T> n = first;
// weitergehen bis zum Ende
while(n.getNext()!= null) {
    n = n.getNext();
}
// Jetzt zeigt n auf den letzten Knoten.

(A3) "append" für die nicht leere Liste

Implementiere den zweiten Fall der Methode append entsprechend deiner Vorüberlegungen. Teste deine Methode von Hand, indem du eine Liste für Integer Zahlen erzeugst und 3 Knoten mit aufsteigenden Werten einfügst. Wenn du das Listenobjekt inspizierst, solltest du deine Werte in der korrekten Reihenfolge vorfinden.

Lösungsvorschlag zur Methode "append"


<<< Zurück zur Übersicht: Liste in Java oder Weiter zur Länge und Wert auslesen >>>