Sobes.tech
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:

  1. Określić początkowy zakres — zazwyczaj cały tablica (lewa i prawa granica).
  2. Znaleźć indeks elementu środkowego zakresu.
  3. 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ę).
  4. 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