Ich vermute, dass es eine eigens implementierte LinkedList ist, die ihr verwendet und wenn es eine entsprechende Übung zu abstrakten Datentypen geht, dann wäre die Übung an dieser Stelle, dass Du Dir das erst einmal aufmalst: Wie genau sieht die LinkedListe aus, die Du derzeit hat und was genau soll das Resultat sein?
Falls ihr gewisse Funktionen schon habt, dann ist Funktionalität übernehmbar. Das Löschen eines Elements wird vom Prinzip her genau das sein, was DU brauchst, um ein Element aus der Liste heraus zu nehmen. Das Einfügen eines Elements wird genau das machen, was Du brauchst, um ein Element einzufügen.
Daher ist aber halt zwingend notwendig, dass die Klasse LinkedList, die Ihr habt, komplett verstanden wurde. Das ist eine existenzielle Basis und jede Erklärung kann nur dann zielführend sein, wenn diese Basis vorhanden ist.
Da ihr ja vermutlich nur eure eigene LinkedList habt, ist auch das genau der Datentyp, den ihr verwenden sollt / müsst. Es geht ja gerade darum, euer Wissen zu diesem Datentyp zu vertiefen.
Und da ist es dann vermutlich so, dass ihr gewisse Grundlagen schon haben werdet (wie
@temi schon sagte): Ihr werdet ja schon LinkedLists angelegt und mit Elementen gefüllt haben. Irgend welche Operationen werdet Ihr schon haben. Und daher bin ich sehr sicher, Du Du prinzipiell schon Code hast, um eine Liste zu erzeugen und da Elemente hinzu zu fügen. (Wie hättest Du sonst im anderen Thread etwas machen können?)
Daher wären zwei Punkte ganz wichtig:
a) Bei Fragen brauchen wir Details. Du lieferst uns keinerlei Details, so dass wir konkrete Aussagen nicht treffen können.
b) Die Grundlagen sind wichtig. Deine Probleme rühren aus meiner Sicht daher, dass Du die Grundlagen, die ihr vorher gehabt haben müsst, nicht verstanden hast. Die LinkedList, die vorgegeben wurde, ist nicht (komplett) verstanden. Diese Grundlage ist aber zwingend notwendig!
Bezüglich der Grundlagen: LinkedList kann man sich sehr gut bildlich vorstellen. Ein Bild, das ich in der Vergangenheit verwendet habe, ist das Bild eines Zuges. Die Züge sind aber leider noch nicht wirklich modern - zum Koppeln dienen einfach Seile. Diese sind an einem Ende sichtbar und werden so am anderen Ende befestigt, dass das andere Ende da keinen Zugriff drauf hat (Sozusagen unterhalb des Waggons.)
LinkedList hat dann eine Referenz auf einen ersten Knoten, genannt "head":
head ist dann die Lok. An der Lok hinten ist ein ein Seil befestigt. Am Seil kann ein Waggon hängen oder auch nicht (null)
Waggon sind dann die Nodes. Die haben also eine Ladung (value, data, wie auch immer). Vorne ist unterhalb des Waggons eine Möglichkeit, etwas zu befestigen. Da kann kein, ein oder sogar mehrere Seile befestigt werden. Das kann man aber vom Waggon aus nicht sehen! Und hintern ist wieder ein Seil. An dem kann ein Waggon hängen oder auch keiner.
Nun kann man sich alle möglichen Dinge vorstellen.
- Prüfen, ob die Liste leer ist. Das wäre ein Zug, an dem keine Waggons hängen. ==> Also bei der Lok schauen, ob da am Sel ein Waggon hängt oder nicht.
- Ein Waggon hinten dran hängen: Ich gehe von der Lok aus so lange immer von Waggon zu Waggon, bis ich ein Seil habe, an dem kein Waggon dran hängt. Da hänge ich dann einen Waggon an.
- Ein Waggon dazwischen hängen: Ist dann auch ganz einfach visuell vorstellbar. Ich löse an der Stelle, wo der Waggon hin soll, das Seil und binde das Seil vom neuen Waggon dort an. Das gelöste Seil binde ich dann an den Waggon, der dazwischen kommen soll.
- ...
Das ist dann bildlich vorstellbar und so auch schnell verständlich. Zur Not könnte man dies sogar mit einer Holzeisenbahn für paar Euro durchspielen.