class BKnoten { // Klasse für Baumknoten String info; BKnoten links, rechts; BKnoten(String s, BKnoten li, BKnoten re) { // Konstruktor info = s; links = li; rechts = re; } } class Baum { BKnoten b = null; BKnoten Ein (String s, BKnoten k) { // Resultat: der modifizierte Teilbaum // mit neuem Eintrag, falls nicht schon if (k==null) // vorhanden return new BKnoten(s,null,null); else { if (s.compareTo(k.info) < 0) k.links = Ein(s,k.links); // Im linken Teilbaum einfügen else { if (s.compareTo(k.info) > 0) k.rechts = Ein(s,k.rechts); // Im rechten Teilbaum einfügen }; return k; // evtl. schon enthalten } } void FügeEin(String s) { // Eintrag s in Baum b einfügen b=Ein(s,b); } void Dr(BKnoten k) { // Druckt die Inform.-Komponenten if (k.links!=null) Dr(k.links); // eines Teilbaumes in Inordnung System.out.print(k.info+" "); if (k.rechts !=null) Dr(k.rechts); } void DrBaumIn(String t) { // Druckt die Inform.-Komponenten System.out.println(" "); // des Baumes b in Inordnung System.out.print(t+":"); if (b==null) System.out.println(" Leer"); else Dr(b); System.out.println(" "); } }