oya Skrevet 6. mai 2007 Del Skrevet 6. mai 2007 (endret) Hei! Har et lite problem med sortert listestruktur: abstract class LinkedList{ Link første; Link siste; int lengde; protected class Link{ Link neste; Link før; Object o; void settInnHerEllerFør(Link l){ // Tall over 1 sier at l skal være sortert før this int test = ((Ord)o).compareTo(l.getObject()); if(test > 0 && this != første) { if(før!=null) før.settInnHerEllerFør(l); } else if(this == første && test > 0) { setFør(l); l.setNeste(this); første = l; } else if(this == siste && test <= 0) { l.setFør(this); setNeste(l); siste = l; } else if(test <= 0) { l.setFør(this); if (neste != null) { neste.setFør(l); l.setNeste(neste); } setNeste(l); } } } } class OrderedLinkedList extends LinkedList { int nr = 0; public void add(Object o){ Link l = new Link(o); if (nr == 0) { lengde = 0; første = l; siste = l; nr++; } else { siste.settInnHerEllerFør(l); } lengde++; } } Når jeg kjører igjennom testprogrammet til denne, så virker det som det går bra en stund, men plutselig flommer det over med feilmeldinger ...at IfiLinkedList$Link.settInnHerEllerF°r(IfiCollection.java:132) at IfiLinkedList$Link.settInnHerEllerF°r(IfiCollection.java:132) at IfiLinkedList$Link.settInnHerEllerF°r(IfiCollection.java:132) ... Får ikke sett hva som står øverst, rekker ikke få nå pause i kjøringen. Noen som ser noe galt med metoden settInnHerEllerFør i Link? Endret 6. mai 2007 av oya Lenke til kommentar
pgdx Skrevet 13. mai 2007 Del Skrevet 13. mai 2007 Vanskelig å si når vi ikke vet hva som er på linje 132, men hva tenker du på med dette? if(test > 0 && this != første) { if(før!=null) før.settInnHerEllerFør(l); } Kan denne resultere i en uendelig løkke? Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå