/ / Einfügen und Löschen an bestimmten Positionen in einer einzelnen verknüpften Liste [geschlossen] - c #, verknüpfte Liste

Einfügen und Löschen an einer bestimmten Position in der einzelnen verknüpften Liste [geschlossen] - c #, verknüpfte Liste

Kann mir jemand eine Idee geben, wie ich einen Knoten an einer bestimmten Position einfügen oder löschen kann. Erklären Sie es bitte mit einem Beispielcode, damit ich es gut verstehen kann. Vielen Dank

Antworten:

1 für die Antwort № 1

Die Idee ist:

1 ° / Suchen Sie die Position, an der Sie einfügen oder löschen möchten.

2 ° / Speichern Sie den nächsten Knoten, um ihn mit dem neuen Knoten (Einfügen) oder mit dem vorherigen Knoten (Löschen) zu verknüpfen.

Für die Einfügung sollte es so aussehen:

public class Node
{
public string Name { get; set; }
public Node Next { get; set; }

public void InsertAt(string name, int index, Node start)
{
Node current = start;
// Skip nodes until you reach the position
for (int i = 0; i < index; i++)
{
current = current.Next;
}
// Save next node
Node next = current.Next;
// Link a new Node which next Node is the one you just saved
current.Next = new Node () { Name = name, Next = next };
}
}

Jetzt versuche dich für die Löschung :).