Wie auf den vorherigen Knoten des aktuellen Knoten und dem nächsten Knoten des aktuellen Knoten in C?
Bis jetzt, in der Verlinkten Liste habe ich nur eine einzige temp
Knoten Durchlaufen einer bestimmten Link-Liste für verschiedene operaitons das ist sehr einfach.
Nun eine Zuordnung von einem Buch verlangt, um Schreibe einen C-code, wo die Benutzer-Eingabe wäre eine Zahl in der Liste und wir vergleichen die Nummer einfach vor die angegebene Nummer, und die Zahl, die direkt nach der angegebenen Anzahl und sagen, welche größer oder gleich, falls. Für, die, meiner Meinung nach, müssen wir zwei Zeiger viz. prev
und next
auf beiden Seiten der current
Knoten, zeigen Sie auf zwei zahlen, die an den verschiedenen Knoten und dann sammelt es Daten, die wir vergleichen können. Aber ich kann keinen code in C. Also ein code-snippet auf den gewünschten Knoten wäre hilfreich.
add_at_end
code-snippet und die Arbeit an der Lösung von dort.Wie? Ich bin nicht mit zwei verschiedenen Knoten hier.
Müssen Sie zum ändern der node-Struktur, um eine
next
UND prev
Zeiger. Dann sind Sie zuweisen können, sowohl in Ihrem add_at_end
Funktion.Ich brauche Sie nicht binden Sie in den aktuellen code ein. Mein Auftrag ist anders. Vielleicht war der code irreführend. Die ich gelöscht habe irrelevanten code jetzt.
Okay. Auch die änderung der Struktur ist eine option, die einfacher meiner Meinung nach. Aber wenn Sie halten müssen, um einen Zeiger auf den vorherigen Knoten zum aktuellen Knoten in der Suche, eine einfache Möglichkeit zu überprüfen, ob
node->NEXT
ist der Knoten, den Sie suchen. Dann node
ist Ihre prev
, node->NEXT
ist Ihre current
, und node->NEXT->NEXT
ist Ihre next
.InformationsquelleAutor Mistu4u | 2013-09-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Brauchen Sie nicht einen prev-Zeiger. Sie benötigen nur eine temporäre variable zu verfolgen, den früheren und aktuellen Knotens in etwa so:
Sobald Sie finden, wo Sie wollen Ihre Vergleiche, die Sie verwenden können, prevNode Daten, curNode Daten und curNode->nächste Daten. Hoffe, das hilft.
InformationsquelleAutor Freddie
Gibt es zwei Möglichkeiten, dies zu tun.
Verwenden Sie eine doppelt verkettete Liste
Einfach verknüpfte Liste
InformationsquelleAutor Vivek S