Ποιο είναι το μεγάλο Ο της δυαδικής αναζήτησης;
Ποιο είναι το μεγάλο Ο της δυαδικής αναζήτησης;

Βίντεο: Ποιο είναι το μεγάλο Ο της δυαδικής αναζήτησης;

Βίντεο: Ποιο είναι το μεγάλο Ο της δυαδικής αναζήτησης;
Βίντεο: Δέντρα ΙΙ - Δυαδικά Δέντρα - Δυαδικά Δέντρα Αναζήτησης 2024, Ενδέχεται
Anonim

Δυαδική αναζήτηση είναι ταχύτερη από τη γραμμική Αναζήτηση εκτός από μικρές συστοιχίες.

Δυαδική αναζήτηση αλγόριθμος.

Οπτικοποίηση του δυαδική αναζήτηση αλγόριθμος όπου το 7 είναι η τιμή στόχος
Τάξη Αναζήτηση αλγόριθμος
Απόδοση στην καλύτερη περίπτωση Ο (1)
Μέση απόδοση Ο (ημερολόγιο n)
Πολυπλοκότητα χώρου στη χειρότερη περίπτωση Ο (1)

Από εδώ, ποια είναι η πολυπλοκότητα της δυαδικής αναζήτησης;

Δυαδική αναζήτηση εκτελείται στη χειρότερη λογαριθμική στιγμή, κάνοντας συγκρίσεις O(log n), όπου n είναι ο αριθμός των στοιχείων στον πίνακα, το O είναι ο συμβολισμός Big O και το log είναι ο λογάριθμος. Δυαδική αναζήτηση παίρνει σταθερό (O(1)) χώρο, που σημαίνει ότι ο χώρος που παίρνει ο αλγόριθμος είναι ο ίδιος για οποιονδήποτε αριθμό στοιχείων του πίνακα.

Επιπλέον, είναι η δυαδική αναζήτηση η πιο γρήγορη; Ναι και ΟΧΙ. ναι υπάρχουν αναζητήσεις που είναι ταχύτερα, κατά μέσο όρο, από μια διχοτόμηση Αναζήτηση . Αλλά πιστεύω ότι εξακολουθούν να είναι O(lg N), απλώς με χαμηλότερη σταθερά. Θέλετε να ελαχιστοποιήσετε τον χρόνο που χρειάζεται για να βρείτε το στοιχείο σας.

Ομοίως, μπορεί κανείς να ρωτήσει, πώς γράφετε μια δυαδική αναζήτηση;

Δυαδική αναζήτηση : Αναζήτηση έναν ταξινομημένο πίνακα με επανειλημμένη διαίρεση του Αναζήτηση διάστημα στο μισό. Ξεκινήστε με ένα διάστημα που καλύπτει ολόκληρο τον πίνακα. Αν η τιμή του Αναζήτηση το κλειδί είναι μικρότερο από το στοιχείο στη μέση του διαστήματος, περιορίστε το διάστημα στο κάτω μισό. Διαφορετικά περιορίστε το στο πάνω μισό.

Ποια είναι η χρονική πολυπλοκότητα της δυαδικής αναζήτησης;

Πρέπει λοιπόν να υπάρχει κάποιο είδος συμπεριφοράς που να δείχνει ο αλγόριθμος για να δοθεί α περίπλοκο του log n. Ας δούμε πώς λειτουργεί. Από δυαδική αναζήτηση έχει απόδοση στην καλύτερη περίπτωση O(1) και στη χειρότερη περίπτωση (μέση περίπτωση) απόδοση O(log n), θα δούμε ένα παράδειγμα της χειρότερης περίπτωσης. Εξετάστε έναν ταξινομημένο πίνακα 16 στοιχείων.

Συνιστάται: