Junior — Middle
Wyjaśnij zasadę działania algorytmu wyszukiwania binarnego i jego główne etapy.
sobes.tech AI
Odpowiedź od AI
Algorytm wyszukiwania binarnego służy do znajdowania elementu w posortowanej tablicy. Jego zasada opiera się na kolejnych podziałach obszaru wyszukiwania na pół i porównaniu poszukiwanego wartości z elementem pośrodku aktualnego zakresu.
Główne etapy:
- Określić początkowy zakres — zazwyczaj cały tablica (lewa i prawa granica).
- Znaleźć indeks elementu środkowego zakresu.
- Porównać poszukiwaną wartość z elementem w środku:
- Jeśli są równe, zwróć indeks znalezionego elementu.
- Jeśli poszukiwana wartość jest mniejsza, zawęzić wyszukiwanie do lewej połowy (przesunąć prawą granicę).
- Jeśli jest większa, do prawej połowy (przesunąć lewą granicę).
- Powtarzać kroki 2-3, aż zakres stanie się pusty.
Przykład w Pythonie:
def binary_search(arr, target):
left, right = 0, len(arr) - 1
while left <= right:
mid = (left + right) // 2
if arr[mid] == target:
return mid
elif arr[mid] < target:
left = mid + 1
else:
right = mid - 1
return -1 # element nie znaleziony