LinkedList Methoden selbst schreiben

Leuchtturm

Mitglied
Hallo, wir sollen, um den umgang mit Listen zu lernen, die Methoden von LinkedList selbst schreiben (ohne Java.util.list zu benutze). Das hab ich bis auf eine Methode auch schon ganz gut hinbekommen :).

Ich schaff es nicht die Methode "public Object get(int index)" welche das Element an Position n ausgibt. Ich bekomm das nicht hin weil ich noch nicht genau durchschaut habe wie ich ne schleife schreiben kann um an das gewünschte Element zu kommen (oder geht das auch ohne SChleife??). Vllt. hab ich den Aufbau auch noch nicht richtig verstanden?

Wäre nett wenn ihr mirn Tipp geben könnt wie das funktioniert....
 

eRaaaa

Top Contributor
Nunja, du hast doch sicherlich irgendwo das erste Element/den Header? Jetzt holst du dir halt von da aus "index-mal" den Nachfolgerknoten...wie genau du das machen musst, kommt auf deine Implementierung drauf an

Es gibt dann noch ein paar Optimierungen die man machen könnte, z.B. schauen ob der Index eher in der hinteren Hälfte liegt und dann eher rückwärts laufen (sich also immer den Vorgängerknoten holen) ...
 

Leuchtturm

Mitglied
Hab hinbekommen!

Zur Vollständigkeit:

Java:
  public Element get(int n) {
    if (n == 1) {
      return next.item;
    }
     LinkedList p = this;
     for (int i = 0; n > i; i++){
       p = p.next;
     }
    return p.item;
 }
 

Oben