Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Referat: Listen Einfach und doppelt verkettete Listen in JAVA by Jens Weibler.

Ähnliche Präsentationen


Präsentation zum Thema: "Referat: Listen Einfach und doppelt verkettete Listen in JAVA by Jens Weibler."—  Präsentation transkript:

1 Referat: Listen Einfach und doppelt verkettete Listen in JAVA by Jens Weibler

2 Was sind Listen? Listen sind eindimensional verkettete Elemente Rekursive Datenstruktur: Liste = Element + Liste | Leer

3 Wofür kann man Listen verwenden? (Vorteile) Variable Anzahl von Elementen zur Laufzeit (Nachteil eines Arrays -> feste Länge) und somit auch keine Speicherverschwendung Beim Sortieren einer Liste werden Pointer verschoben, nicht die Daten selber!

4 Wie ist eine Liste aufgebaut? Eine einfach verkettete Liste Eine Liste beginnt immer mit einem Kopf Dann folgen beliebig viele Elemente Das Ende bildet ein Verweis auf null Kopf DataNextDataNext null

5 Das ganze jetzt in JAVA public class ListenElement { // Inhalt private object data; // nächstes Element private ListenElement next = null; // Konstruktor public ListenElement (object data, ListenElement next) { this.data = data; this.next = next; } public class Liste { // Kopf der linearen Liste private ListenElement start = null; // liefert start zurück public ListenElement getStart () { return start; }

6 Einfügen von Elementen (am Anfang einer Liste) Vorher: Nachher: // Methode in Liste.java: public void vorneEinfuegen (object data) { start = new ListenElement (data, start); } KopfDataNext null KopfDataNextDataNext

7 Einfügen von Elementen (am Ende oder im Inneren einer Liste) Vorher: Nachher: // Methode in ListenElement.java: public void einfuegen (object data) { next = new ListenElement (data, next); } KopfDataNextDataNextKopf null DataNextDataNext DataNext

8 Löschen eines Elements Kopf DataNextDataNext null DataNext // Methode in ListenElement.java: // Entfernen des naechsten Elements public void loescheNext () { if (next != null) next = next.next; }

9 Rekursives Durchgehen einer Liste am Beispiel toString() // Methode in Liste.java: public String toString () { return "[ " + start.toString() + " ]"; } // Methode in ListenElement.java: public String toString () { if (next == null) { return data.toString(); } else { return data.toString() + ", " + next.toString(); }

10 Doppelt verkettete Listen Wofür doppelt verkettete Listen? Möglichkeit bei einer sortierten Liste rückwärts zu suchen Direktes Anhängen/Löschen eines Elements am Ende (Benutzung als Puffer – FIFO)

11 Was ändert sich? Schema einer doppelt verketteten Liste mit Fuss Kopf null DataNextPreviousDataNextPreviousFuss


Herunterladen ppt "Referat: Listen Einfach und doppelt verkettete Listen in JAVA by Jens Weibler."

Ähnliche Präsentationen


Google-Anzeigen