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:
- Určte počiatočné hranice vyhľadávania: ľavý a pravý index.
- Nájdite stredný index: mid = (left + right) // 2.
- 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.
- 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