HOWTO · Python
Python Binäre Suche
Dieses Tutorial demonstriert, wie man den Binärsuchalgorithmus in Python verwendet.
Auf dieser Seite
Hinweis
Wenn Sie die Binäre Suche im Detail verstehen wollen, lesen Sie den Artikel Binärer Suchalgorithmus.
Binärer Suchalgorithmus
Nehmen wir an, wir haben ein unsortiertes Array A[], das n Elemente enthält, und wir wollen ein Element X finden.
-
Setzen Sie
loauf0undhiaufn - 1. -
Während
lo<hi, setzemid=lo + (hi - lo)/2.- Wenn
A[mid]==X, haben wir das Element gefunden und geben den Indexmidzurück. - Wenn
A[mid]<X, dann verwerfen wir die linke Hälfte der Elemente und setzenloalsmid+1. - Wenn
A[mid]>X, dann verwerfen Sie die rechte Hälfte der Elemente und setzen Siehialsmid-1.
- Wenn
-
Element wird nicht gefunden, also
-1zurückgeben.
Python-Programm für binäre Suche
def binary_search(arr, x, n):
lo = 0
hi = n - 1
mid = 0
while lo <= hi:
mid = (hi + lo) // 2
if arr[mid] < x:
lo = mid + 1
elif arr[mid] > x:
hi = mid - 1
else:
return mid
return -1
arr = [2, 3, 4, 1, 5]
x = 4
n = len(arr)
result = binary_search(arr, x, n)
if result == -1:
print("Element not found")
else:
print("Element is present at index", str(result))
Ausgabe:
Element is present at index 2