Einzelverknüpfungsliste gegen doppelt verknüpfte Liste
Die verknüpfte Liste ist eine lineare Datenstruktur, mit der eine Sammlung von Daten gespeichert wird. Eine verknüpfte Liste verteilt ihren Elementen in ihrem eigenen Speicherblock Speicher und die Gesamtstruktur wird erhalten, indem diese Elemente als Glieder in einer Kette verknüpft werden. Eine einzig verknüpfte Liste besteht aus einer Folge von Knoten und jeder Knoten hat einen Verweis auf den nächsten Knoten in der Sequenz. Eine doppelt verknüpfte Liste enthält eine Folge von Knoten, in denen jeder Knoten einen Verweis auf den nächsten Knoten sowie auf den vorherigen Knoten enthält.
Einzig verknüpfte Liste
Jedes Element in einer einzig verknüpften Liste enthält zwei Felder, wie in Abbildung 1 gezeigt. Das Datenfeld enthält die tatsächlichen Daten gespeichert und das nächste Feld enthält den Verweis auf das nächste Element in der Kette. Das erste Element der verlinkten Liste wird als Kopf der verknüpften Liste gespeichert.
Abbildung 2 zeigt eine einzig verknüpfte Liste mit drei Elementen. Jedes Element speichert seine Daten und alle Elemente mit Ausnahme des letzten einen Verweis auf das nächste Element. Das letzte Element hält einen Nullwert in seinem nächsten Feld. Auf jedes Element in der Liste kann zugegriffen werden, indem Sie am Kopf beginnen und dem nächsten Zeiger folgen, bis Sie das erforderliche Element erfüllen.
Doppelt verknüpfte Liste
Jedes Element in einer doppelt verknüpften Liste hat drei Felder, wie in Abbildung 3 gezeigt. Ähnlich wie bei der einzig verknüpften Liste enthält das Datenfeld die tatsächlichen Daten gespeichert und das nächste Feld enthält die Referenz auf das nächste Element in der Kette. Zusätzlich enthält das vorherige Feld den Verweis auf das vorherige Element in der Kette. Das erste Element der verlinkten Liste wird als Kopf der verknüpften Liste gespeichert.
Abbildung 4 zeigt eine doppelt verknüpfte Liste mit drei Elementen. Alle Zwischenelemente speichern Verweise auf die ersten und früheren Elemente. Das letzte Element in der Liste enthält einen Nullwert in seinem nächsten Feld und das erste Element in der Liste enthält einen Nullwert in seinem vorherigen Feld. Die doppelt verknüpfte Liste kann durch Befolgen der nächsten Referenzen in jedem Element nach vorne durchquert werden und können mit den vorherigen Referenzen in jedem Element nach hinten durchquert werden.
Was ist der Unterschied zwischen der einzig verknüpften Liste und der doppelt verknüpften Liste?
Jedes Element in der einzig verknüpften Liste enthält einen Verweis auf das nächste Element in der Liste. Doppelt verknüpfte Listen erfordern mehr Platz für jedes Element in der Liste, und Elementaroperationen wie Insertion und Löschen sind komplexer, da sie sich mit zwei Referenzen befassen müssen. Aber doppelt Linklisten ermöglichen eine einfachere Manipulation, da das Durchqueren der Liste in Vorwärts- und Rückwärtsanweisungen ermöglicht wird.