Normal
Nochmal kurz zum Löschen im Baum zurück.[CODE=c]} else { //Fall 3 im linken Teilbaum den größten Wert node *tmp = root->left; while (tmp->right != NULL) tmp = tmp->right; //Was muss ich hier zurück geben?[/CODE]Im dritten Fall gehe ich im linken Teilbaum ganz nach rechts. Der Knoten soll ja jetzt mein neuer Aktueller Knoten werden für den der gelöscht werden soll.Muss ich dann nur return tmp; machen?Nein kann nicht sein, dann verliere ich ja den Rest des Baumes =D
Nochmal kurz zum Löschen im Baum zurück.
[CODE=c]} else { //Fall 3 im linken Teilbaum den größten Wert
node *tmp = root->left;
while (tmp->right != NULL)
tmp = tmp->right;
//Was muss ich hier zurück geben?[/CODE]
Im dritten Fall gehe ich im linken Teilbaum ganz nach rechts. Der Knoten soll ja jetzt mein neuer Aktueller Knoten werden für den der gelöscht werden soll.
Muss ich dann nur return tmp; machen?
Nein kann nicht sein, dann verliere ich ja den Rest des Baumes =D