Methoden rekursive Methode funktioniert nicht

seves

Mitglied
Meine rekursive Methode funktioniert nicht:

Java:
 public Datenelement suchen(String vergleichswert){
        if(wurzel==null){
            return null;
        }
        else{
            return wurzel.suchen(vergleichswert);
        }
    }

in der sechsten Zeile meckert Java, dass die Methode 'suchen' nicht definiert ist (cannot find symbol - method suchen (java.lang.string)) ???:L

Die Methode ist doch aber eindeutig definiert ... ?
 
sieht so aus, als sollte es so lauten:

[JAVA=6]return suchen(vergleichswert);[/code]

was aber auch keinen Sinn ergibt. (Endlosschleife)
 
Zuletzt bearbeitet:
Also das ganze ist ein geordneter Binärbaum. Die Methode ist eben dazu da, einen Vergleichswert im Baum zu suchen, was euch wahrscheinlich schon klar war.

Wurzel ist überhaupt nicht weiter festgelegt, sie erscheint lediglich in den Attributen des Baums.
 
sollte es dann nicht irgendsowas wie
Java:
public Datenelement suchen(Node node, String vergleichswert){
        if (node.getWert().equals(vergleichswert) {
           return ..... ;
        }
        else{
            if (node.left != null) 
                    return suchen(node.left, vergleichswert);
            if(node.rigth != null) 
                   return suchen(node.rght, vergleichswert);
        }
    }
bzw mit einem Stack bzw Queue iterativ die Knoten durchgehen bis was gefunden ist.... (v.a. weil die impl da oben nicht richtig ist und es nur demonstrieren soll)
 

Zurück
Oben