© 1999-2003, Flemming Koch Jensen
Alle rettigheder forbeholdt
Dobbelthægtede lister

Vejledende løsninger
Opgaver

 

 

1 Udvid List-klassen (fra kapitlet) med følgende metoder, der alle opererer på listen ud fra et array-perspektiv, idet der refereres til knuderne i listen med et index.
   
  Object get( int index )
  Denne metode returnerer data fra den knude, der står som nummer index i listen, idet første knude har nummer 0, og der tælles fra venstre mod højre.
 

Såfremt der ikke eksisterer en knude med det givne index, returneres der null.

   
  boolean insert( int index, Object obj )
  Denne metode indsætter en knude på den plads i listen, der er givet ved index. Den knude der før havde dette index, vil nu blive "skubbet" mod højre i listen. Mao. bliver den nye knude indsat mellem de to knuder, der er på positionerne: index-1 og index.
  Såfremt dette ikke er muligt, fordi listen er for kort, gøres ikke noget.
 

Metoden returnerer boolsk, om der blev indsat en knude.

   
  Object remove( int index )
  Denne metode fungerer som get-metoden ovenfor, blot med den forskel, at den implicerede knude fjernes fra listen.
 

Der returneres efter de samme retningslinier som for get-metoden.

   
  hint: Lav en service-metode: findNodeByIndex, der tager et index som parameter. Denne metode er nyttig i forbindelse med implementationen af alle tre metoder.