Binäre Suchbäume

valentina2013

Bekanntes Mitglied
Hallo,

mich beschäftigt eine Frage: eigentlich ist es bei binären Suchbäumen so, dass folgende Eigenschaften vorhanden sind:Ein Schlüssel,der mit einem Wert verbunden ist (ich verstehe es z.B. so:die 5. Knoten am rechten Teilbaum enthält den Schlüssel 14), und auch die Anzahl der vorhandenen Knoten.

Hatte aber eine Aufgabe, wo im Baum nur die Schlüssel gegeben sind,sonst nichts,und man müsste. einen übergebenen Schlüssel mit im Knotet enthaltenen Schlüssel vergleichen,falls übereinstimmung die Referenz zurückgeben. Was ich nicht verstehe:wie kann denn die Suche stattfinden wenn ich nicht die Werte der Knoten nicht kenne?
Zur Verdeutlichung meiner konfusen Frage:

Java:
// Klassendefinition eines binären Suchbaumes
class BinaryTree {
    // Verweis auf den Wurzelkonten des Baumes
	TreeNode root;
	
	// Default Konstruktor zum Erzeugen eines leeren Baumes
	BinaryTree() {
		root = null;
	}
	
	TreeNode search(int k) {
		if(root != null)
			return root.search(k);
		else 
			return null;
	}
	
	void rangeSearch(int lower, int upper) {
		if(root != null)
			root.rangeSearch(lower, upper);
		System.out.println();
	}
	
	int depth () {
		if (root != null)
			return root.depth();
		else
			return 0;
	}
}
und die Klasse TreeNode wo die obengenante Methode implemertiert werden muss

Java:
// Klasse zur Repräsentation eines Knotens eines binären Suchbaumes
class TreeNode {
    // Der Suchschlüssel
	int key;
	TreeNode left,right;
	
	// Ein Konstruktor zum Erzeugen eines Baumknotens
	TreeNode(int k) {
		key = k;
		left = right = null;
	}
	
	// Sequentielle Ausgabe des Suchbaumes in der Reihenfolge 
	// [linker Teilbaum] Wurzel [rechter Teilbaum]
	void inorder() {		
		if (left != null) left.inorder();
		
		System.out.print(key+" ");
		
		if (right != null) right.inorder();
	}
TreeNode search (int k) {//diese methode muss den schlüssel im Baum suchen und die referenz zurückgeben
	    //wie kann denn dies funktionieren?
       

        return null;		
	}
	
}
wäre sehr nett wenn einer mich aufklären könnte🙂
danke 🙂
 
Zuletzt bearbeitet:

Zurück
Oben