έχω ένα BST όπου i εισάγετε κλειδιά από 1 ... n τυχαία (κάθε μετάθεση γίνεται με 1 / n! πιθανότητα) . η ερώτησή μου είναι γιατί τα προκύπτοντα δέντρα δεν είναι ομοιόμορφη , ακόμη και αν η μετάθεση είναι ομοιόμορφη ;
Τυχαία Binary Search Tree
Πολλά εξαρτώνται από την εφαρμογή του δέντρου. Είναι αυτο εξισορρόπηση; Σκεφτείτε τα απλά δέντρα 1 2 3 και 3 2 1
Very simple tree:
add 1
1
add 2
1
\
2
add 3
1
\
2
\
3
τότε 3 2 1
προσθέστε 3
3
add 2
3
/
2
add 1
3
/
2
/
1
Τώρα κάνουμε 2 3 1
2
2
\
3
2
/ \
1 3
ένα δυαδικό δέντρο αναζήτησης δεν είναι απλώς ένα ομοιόμορφο δένδρο αναζήτησης ... ένα δέντρο είναι χτισμένο με τη σειρά με την οποία οι νέες τιμές αποθηκεύονται σε αυτό. όπως glowcoder ήδη έδειξε, ότι η ομοιομορφία εγγύηση διαιτητή ...
με ομοιόμορφη κατανομή των τυχαίων αριθμών δεν εγγυάται την παραγγελία των αξιών που είναι η βέλτιστη για την κατασκευή ενός δυαδικού δένδρου
να έχουν ένα ελάχιστο αναζήτηση προσπάθεια μέσω ενός δυαδικού δέντρου, το δέντρο πρέπει να ξαναχτίσουν τακτικά. Αυτό συμβαίνει συνήθως σε μη εργάσιμες ώρες, όπου ένας αλγόριθμος μπορεί να διαβάσει ολόκληρο το δέντρο σε μια συνδεδεμένη λίστα και, στη συνέχεια, από τον κατάλογο αυτό, χτίζει ένα νέο δέντρο με βέλτιστη ομοιομορφία













