Sari la conținut
Academia PythonAcademiaPython

2.1 Căutarea binară

Citește și prezice

python.py
def cautare_binara(lista, x):
stanga, dreapta = 0, len(lista) - 1
while stanga <= dreapta:
mijloc = (stanga + dreapta) // 2
if lista[mijloc] == x:
return mijloc
elif lista[mijloc] < x:
stanga = mijloc + 1
else:
dreapta = mijloc - 1
return -1
rezultat = cautare_binara([2, 5, 8, 12, 16, 23, 38], 16)
print(rezultat)

Ce valoare se afișează? (Indiciu: 16 e pe poziția a 5-a din lista sortată, indexând de la 0.)

Predicție

Ce valoare se afișează? (16 e pe poziția a 5-a din lista sortată, indexând de la 0.)

python
def cautare_binara(lista, x):
stanga, dreapta = 0, len(lista) - 1
while stanga <= dreapta:
mijloc = (stanga + dreapta) // 2
if lista[mijloc] == x:
return mijloc
elif lista[mijloc] < x:
stanga = mijloc + 1
else:
dreapta = mijloc - 1
return -1
rezultat = cautare_binara([2, 5, 8, 12, 16, 23, 38], 16)
print(rezultat)