Hallo,
Ich habe da mal eine Frage zu meinem nachfolgenden Code.
Laut Jack funktioniert mein Code nicht und zwar wird die "rechte Seite" des Baumes nicht wirklich beachtet. ich gehe davon aus, dass der Fehler im else if(rSuccessor != null && lSuccessor != null) liegt. jedoch komme ich partout nicht drauf, woran es liegen könnte.
Jemand eine Idee?
MFG
Nachfolgend mein Code zu der Aufgabe:
// Aufgabe 5
// Die Methodensignatur darf NICHT geaendert werden
public void marryTheHochzeits() {
if(root != null) {
marryTheHochzeits(root);
}
}
// Rueckgabetyp und Parametrisierung dieser Methode duerfen geaendert werden!
private void marryTheHochzeits(Person currentNode) {
String hochzeit = "Hochzeit";
if(hochzeit.matches(currentNode.getLastName())) {
if(currentNode.isMarried() == false) {
currentNode.setMarried(true);
}
} else if(currentNode.getLeftSuccessor() != null && currentNode.getRightSuccessor() != null) {
Person currentNode2 = currentNode.getRightSuccessor();
currentNode = currentNode.getLeftSuccessor();
marryTheHochzeits(currentNode);
marryTheHochzeits(currentNode2);
} else if(currentNode.getLeftSuccessor() != null) {
currentNode = currentNode.getLeftSuccessor();
marryTheHochzeits(currentNode);
} else if(currentNode.getRightSuccessor() != null) {
currentNode = currentNode.getRightSuccessor();
marryTheHochzeits(currentNode);
}
}