Σ.Μ. Κεφ5 Δυαδική Συνάρτηση Διόρθωση
Τι θα εμφανιστεί όταν θα γίνει η κλήση της συνάρτησης binarySearch για τη λίστα: L [7, 9, 15, 67, 77, 85];
def binarySearch(array, key):
first = 0
last = len(array) - 1
pos = 'Δεν υπάρχει'
while first <= last and pos == -1:
mid = (first + last) / 2
if array[mid] == key:
pos = mid
elif array[mid] < key:
first = mid + 1
else:
last = mid - 1
return pos
print binarySearch(L, 5):
2 | |
Δεν υπάρχει (Το βιβλίο αναφέρει αν δε το βρει pos = -1, αλλά είναι λάθος γιατί η θέση -1 είναι η τελευταία)
| |
5 |