Der Knoten der verknüpften Liste sieht folgt aus:
Im Vergleich zum Array ist die verknüpfte Liste keine sequentielle Datenstruktur, da es sich um eine dynamisch gespeicherte Datenstruktur handelt. Es speichert alle Daten in verschiedenen Speicherorten und wir können auf diese Daten über den Zeiger des Knotens zugreifen, der die Adresse der Daten speichert.
Diese Möglichkeit zum Speichern von Daten hat diese Vorteile:
1. Wir haben keine vordefinierte Speichergröße wie ein Array, was zu viel Speicherabfall führt.
2. Wenn wir in einem Array ein Zeitspeicher definieren, können wir es nicht gemäß unseren Anforderungen verringern oder erhöhen. In einer verknüpften Liste können wir jedoch die Knoten entsprechend unseren Anforderungen erhöhen oder verringern.
Die verknüpfte Liste sieht so aus:
Jede verknüpfte Liste hat einen Header -Knoten, der der erste Knoten der verknüpften Liste ist. und ein Heckknoten, der am Ende der verknüpften Liste vorhanden ist. Aus dem Heckknoten ist die verknüpfte Liste auf den nächsten Knoten vorbei, da sie die Nulladresse speichert, was nichts bedeutet. Wenn eine verknüpfte Liste nur einen Knoten hat, bedeutet dies, dass der Headerknoten und der Heckknoten gleich sind.
Löschen einer verknüpften Liste:
Wie unten angegeben, können wir einen Knoten auf drei Arten aus einer verknüpften Liste löschen:
1. Löschen Sie den ersten Knoten der verknüpften Liste
2. Löschen Sie den letzten Knoten der verknüpften Liste
3. Löschen Sie einen bestimmten Positionsknoten
Erklärung all dieser Konzepte:
Löschen Sie den ersten Knoten der verknüpften Liste (den Header -Knoten):-
Um den ersten Knoten aus der verknüpften Liste zu löschen. Dazu müssen wir das folgende Verfahren befolgen:
A. Wir müssen einen Zeiger erstellen (vorübergehend).
B. Die Adresse des Headerknotens wird in den Zeiger kopiert (temporär).
C. Jetzt haben wir die Adresse des Headerknotens gespeichert. So können wir den nächsten Knoten des Headers als einen verlinkten ersten Knoten deklarieren.
Das Löschen des ersten Knotens bedeutet, dass der Headerknoten einfach ist:
C ++ - Code zum Löschen des ersten Knotens aus der verlinkten Liste:
void deletelinkedListfirstnode ()Löschen des letzten Knotens (Heckknoten):
Das Löschen des Headerknotens der verknüpften Liste war einfach. Wenn wir jedoch den letzten Knoten oder den Heckknoten der verknüpften Liste löschen wollten, müssen wir den Nullzeiger vom Heckknoten auf den vorherigen Knoten des Schwanzes übertragen, der die Adresse des Heckknotens hat.
Um dies zu implementieren, müssen wir zwei temporäre Knoten verwenden und durch die verknüpfte Liste laufen. Wenn die verlinkte Liste der durchquerligen, zeigt der einzige temporäre Knoten auf den aktuellen Knoten, und ein anderer temporärer Knoten zeigt auf den vorherigen Knoten. Jetzt adenden beiden erforderlichen Knoten die Details, die wir haben, und wir können den Heckknoten löschen, während wir den Nullzeiger auf den vorherigen Knoten verschieben.
C ++ - Code zum Löschen des letzten Knotens aus der verlinkten Liste:
void deletelinkedListLastnode ()Löschen des Knotens an einer bestimmten Position:
Um einen Knoten von überall in der verlinkten Liste zu löschen, müssen wir die jeweilige Position des Knotens eingeben, den wir löschen möchten. Um den spezifischen Positionsknoten zu definieren, verwenden wir zwei temporäre Knoten, wie wir es beim Löschen des Heckknotens getan haben. Wir durchqueren die gesamte verknüpfte Liste, bis wir nicht den spezifischen Positionsknoten erhalten, den wir löschen möchten, und nachdem wir diesen Knoten erhalten haben. Da wir nun beide Knotendetails haben, können wir die Adresse einfach vom Löschknoten auf den vorherigen Adressknoten verschieben, der nun auf den nächsten Knoten zeigt, genau wie in der vorherigen gelöschten Methode des letzten Knotens.
C ++ - Code zum Löschen des N -ten Knotens aus der verknüpften Liste:
void deletenthPositionNode (int PositionNumber)C ++ - Programm zum Löschen eines N -ten Knotens aus der verknüpften Liste
#enthaltenAusgang:
Anzeige der LinkedList =>: 50 31 23 23 23 29Abschluss:
In diesem Blog haben wir verschiedene Möglichkeiten untersucht, die verknüpften Listenkonzepte zu löschen und wie wir auch in einem C ++ - Programm codieren können. Schließlich untersuchten wir die Hauptkonzepte des Löschens des Knotens aus einer bestimmten Position. Linked List -Konzepte sind immer wichtig, da dies der Weg ist, um mit dem Gedächtnis des Betriebssystems zu spielen und im Vergleich zum Array viele Vorteile zu haben.