Java Node remove methode

Status
Niet open voor verdere reacties.

missnoobel

Nieuwe gebruiker
Lid geworden
21 jan 2012
Berichten
1
Hallo! Ik heb een probleem met de implementatie van mijn programmeer opdracht.
De specificatie is als hieronder gegeven. Mij lukt het echter niet dmv recursie een remove-methode op te stellen (dwz, +remove(s : String, r : SNode))

Iemand die mij kan helpen? Ik heb zelf:

public void remove(String s, SNode r){
if (r != null){
if (r.getValue().equals(s)){
if (r.getNext() != null){
r = r.getNext();
}
else {
r = null; (hier gaat het fout)
}
}
remove(s,r.getNext());
}
}

Heeel erg bedankt voor degene die hier even nou zou willen kijken want ik word gek!


SList
invariant: de Strings in de SList zijn in oplopende volgorde geordend

-head : SNode

+SList()
post: heeft een lege lijst gecreëerd.

+size() : int
post: retourneert het aantal elementen van de lijst.

+size(r : SNode) : int
post: retourneert het aantal elementen in de lijst die begint bij r.

+addSorted(s : String)
post: er is een nieuwe SNode die s bevat, aan de lijst toegevoegd.
+addSorted(s : String, r : SNode)
pre: de invariant geldt
post: er is een nieuwe SNode die s bevat, aan de lijst die bij r begint, toegevoegd.

+remove(s : String)
post: indien er in de lijst een SNode voorkomt die s bevat, is deze SNode verwijderd.

+remove(s : String, r : SNode)
post: indien er in de lijst die bij r begint, een SNode voorkomt die s bevat, is deze SNode verwijderd.

+find(s : String) : SNode
post: retourneert indien er in de lijst een SNode voorkomt die s bevat, een referentie naar deze SNode, retourneert anders null.

+find(s : String, r : SNode) : SNode
post: retourneert indien er in de lijst die bij r begint, een SNode voorkomt die s bevat, een referentie naar deze SNode, retourneert anders null.

+contains(s : String) : boolean
post: retourneert true dsd er een SNode in de lijst voorkomt die s bevat.

+toString() : String
post: retourneert String representatie van een lijst.

+toString(r : SNode) : String
post: retourneert String representatie van de lijst die begint bij r
 
Misschien is het handig als je de opdracht er bij vermeld. Het is nu nogal lastig om een antwoord te geven.
Wat is je opdracht?

Een binary tree maken waarbij je nodes kan toevoegen en verwijderen?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan