Javacode für binären Suchbaum

/**

* Methoden die das durchsuchen eines binären Baums ermöglichen.

*

* Realisierung der Aufgaben mit Hilfe von Rekursion

*

* Bemerke: ein Binärer Suchbaum enhält keine Duplikate. Die linken Kindknoten sind echt

* kleiner als der Vaterknoten, die rechten Kindknoten sind echt größer als ihre Vaterknoten.

*

*/

public class searchBinaerTree

{

boolean contains(Object obj)

{

// Initialisierung: Beginne an der Wurzel a = root

return contains(obj, root);

// Rufen wir also die Methode contains auf mit einem obj, wollen wir wissen,

// ob der binäre Suchbaum dieses objekt enthält. Dazu fangen wir an der wurzel //an.

 

// root ist vom Typ BNode (selbsterstellter Datentyp)

}

 

boolean contains(Object obj, BNode a)

// rufen wir die Methode mit einem Knoten als Parameter auf

// dann können wir denn Baum ab einer bestimmten Stelle durchsuchen!

{

// Entscheide für aktuellen Knoten a:

if(a == null)

{

return false;

}

else

{

if(obj > a.getData())

{

//Suche im rechten Teilbaum

return contains(obj, a.getRight);

// Rekursion nach rechts im Baum

}

else if(obj < a.getData())

{

//Suche im linken Teilbaum

return contains(obj, a.getLeft());

// Rekursion nach link im Baum

}

else if(obj == a.getData())

{

return true ;

}

}

}

}