Sobes.tech
Junior — Middle

Magyarázza el a bináris keresőalgoritmus működési elvét és fő lépéseit.

sobes.tech MI

Válasz az MI-től

A bináris keresés hatékony algoritmus egy elem keresésére rendezett tömbben. Elve az, hogy a keresési területet sorozatosan felére osztjuk, és összehasonlítjuk a keresett értéket a középső elemmel.

Fő lépések:

  1. Határozza meg a keresés kezdeti határait: bal és jobb indexek.
  2. Keresse meg a középső indexet: mid = (left + right) // 2.
  3. Hasonlítsa össze a keresett értéket a mid-i elemmel.
    • Ha egyenlőek, adja vissza a mid indexet.
    • Ha a keresett érték kisebb, mozgassa a jobb határt mid - 1-re.
    • Ha nagyobb, mozgassa a bal határt mid + 1-re.
  4. Ismételje meg a 2-3 lépést, amíg a bal határ nem haladja meg a jobb határt.

Ha az elem nem található, adjon vissza például -1-et.

Python példával:

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