Δυαδική αναζήτηση: Διαφορά μεταξύ των αναθεωρήσεων
Περιεχόμενο που διαγράφηκε Περιεχόμενο που προστέθηκε
μ Αναστροφή της επεξεργασίας από τον 46.12.190.181 (συνεισφ.), επιστροφή στην τελευταία εκδοχή υπό [[Χρή... |
|||
Γραμμή 19:
Μετά από έναν πεπερασμένο αριθμό βημάτων, ο αλγόριθμος είτε θα βρει τη ζητούμενη θέση, είτε θα μειώσει το εύρος της αναζήτησης στο μηδέν, που σημαίνει ότι το κλειδί δεν βρέθηκε στο διάνυσμα, και θα επιστρέψει την αντίστοιχη ένδειξη.
=== Ψευδοκώδικας ===
Δυαδική_αναζήτηση(Δ[1...n], κλειδί, i, j){
Αν (j < i) τότε
επίστρεψε "Δεν βρέθηκε" και τερμάτισε.
μ = <math>\lfloor (i+j)/2 \rfloor</math>
Αν (κλειδί = Δ[μ]) τότε
επίστρεψε μ και τερμάτισε
αλλιώς αν (κλειδί > Δ[μ]) τότε
Δυαδική_αναζήτηση(Δ[1...n], κλειδί, μ, j)
αλλιώς
Δυαδική_αναζήτηση(Δ[1...n], κλειδί, i, μ)
}
Ο παραπάνω ψευδοκώδικας περιγράφει την αναζήτηση
===Ακραίες περιπτώσεις===
|