Εύρεση ο μεγαλύτερος αριθμός μικρότερος από ένα δεδομένο αριθμό (η) στη δεδομένη BST

ψήφοι
0

Εύρεση ο μεγαλύτερος αριθμός μικρότερος από ένα δεδομένο αριθμό (η) στη δεδομένη BST.

Προσπάθησα αυτό:

ξεκινήσει στον κόμβο ρίζας, ελέγξτε εάν ρίζα ισούται με n-1. Αν η ρίζα είναι μικρότερη από n-1 αναδρομικά να καλέσει τη μέθοδο για root.right. Εάν ρίζα είναι περισσότερο από n-1 αναδρομικά να καλέσει τη μέθοδο για root.left.

Η λύση αυτή λειτουργεί, αν έχω μια καθολική μεταβλητή για να παρακολουθείτε την τρέχουσα μεγαλύτερο στοιχείο μικρότερη από n αλλά αυτό δεν είναι καλή λύση. Παρακαλώ επιτρέψτε μου να ξέρω πώς να λύσει χωρίς global μεταβλητή

Δημοσιεύθηκε 23/08/2011 στις 07:54
πηγή χρήστη
Σε άλλες γλώσσες...                            


1 απαντήσεις

ψήφοι
0

Απλά βάλτε το μεγαλύτερο αριθμό ως παράμετρο στη μέθοδο σας. Όταν θα το ονομάσουμε το πρώτο, να περάσει στο χαμηλότερο αριθμό θα μπορούσε ενδεχομένως να είναι.

Απαντήθηκε 23/08/2011 στις 07:57
πηγή χρήστη

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