Binární vyhledávání: Porovnání verzí

Smazaný obsah Přidaný obsah
m robot přidal: id:Pencarian biner
m →‎Implementace: <source>
Řádek 8:
 
Rekurzivní implementace binárního vyhledávání v jazyce [[Python]]:
<source lang="python">
 
'''def''' binarySearch(seznam, hodnota, vlevo, vpravo):
'''if''' vpravo < vlevo:
'''return''' False
stred = (vpravo + vlevo) / 2
'''if''' seznam[střed] == hodnota:
'''return''' True
'''if''' hodnota < seznam[střed]:
binarySearch(seznam, hodnota, vlevo, střed - 1)
'''else:'''
binarySearch(seznam, hodnota, střed + 1, vpravo)
</source>
 
Díky tomu, že rekurzivní volání jsou na konci funkce, je možné tuto implementaci přepsat pouze pomocí cyklu:
<source lang="python">
 
'''def''' binarySearch(seznam, hodnota, vlevo, vpravo):
'''while''' vlevo <= vpravo:
stred = (vpravo + vlevo) / 2
'''if''' seznam[střed] == hodnota:
'''return''' True
'''if''' hodnota < seznam[střed]:
vpravo = střed - 1
'''else''':
vlevo = střed + 1
'''return''' False
</source>
 
[[Kategorie:Vyhledávací algoritmy]]