Znajdź największą liczbę mniejszą niż danej liczby (n) w danym BST

głosy
0

Znajdź największą liczbę mniejszą niż danej liczby (n) w danym BST.

Próbowałem to:

zaczynają się od węzła głównego sprawdzić, czy korzenia równe n-1. Jeżeli głównym jest mniejsza niż n-1 rekurencyjnie wywołać metody na root.right. Jeśli główny jest większa niż n-1 rekurencyjnie wywołać metody na root.left.

To rozwiązanie sprawdza się, czy mam zmienną globalną, aby śledzić na obecnym największym elementem mniejszych że n ale to nie jest dobre rozwiązanie. Proszę dać mi znać, jak rozwiązać bez zmiennej globalnej

Utwórz 23/08/2011 o 07:54
źródło użytkownik
W innych językach...                            


1 odpowiedzi

głosy
0

Wystarczy umieścić jak największą liczbę jako parametr w swojej metodzie. Kiedy po raz pierwszy nazwać, przechodzą w najniższym numerze mogłaby ona być.

Odpowiedział 23/08/2011 o 07:57
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more