Sobes.tech
Junior — Middle

Vysvetlite princíp fungovania binárneho vyhľadávacieho algoritmu a jeho hlavné kroky.

sobes.tech AI

Odpoveď od AI

Binárne vyhľadávanie je efektívny algoritmus na vyhľadávanie prvku v zoradenom poli. Jeho princíp spočíva v opakovanom delení oblasti vyhľadávania na polovice a porovnávaní hľadané hodnoty s prvkom uprostred.

Hlavné kroky:

  1. Určte počiatočné hranice vyhľadávania: ľavý a pravý index.
  2. Nájdite stredný index: mid = (left + right) // 2.
  3. Porovnajte hľadanú hodnotu s prvkom u mid.
    • Ak sú rovnaké, vráťte index mid.
    • Ak je hľadaná hodnota menšia, posuňte pravú hranicu na mid - 1.
    • Ak je väčšia, posuňte ľavú hranicu na mid + 1.
  4. Opakujte kroky 2-3, kým ľavá hranica nepresiahne pravú.

Ak prvok nie je nájdený, vráťte napríklad -1.

Príklad v Pythone:

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