Ich habe folgendes Problem:
Nachdem ich den Algorithmus zur Binären Suche erstmal iterativ gelöst habe wollte ich auch eine rekursive Lösung finden. Doch doch nach jedem Aufruf der rekursiven Variante bekomme ich als Rückgabewert None. Ich finde einfach den Fehler nicht. Ich hoffe ihr könnt mir helfen
iterative Lösung
Code: Alles auswählen
def binSearch(s, k, l, r):
while l<=r:
c = (l+r)/2
if s[c]==k:
return True
elif s[c]>k:
r = c - 1
elif s[c]<k:
l = c + 1
return False
Code: Alles auswählen
def rekBinSearch(s, k, l, r):
c = (l+r)/2
if l>r:
return False
else:
if s[c]==k:
return True
elif s[c]>k:
rekBinSearch(s,k,l,c-1)
elif s[c]<k:
rekBinSearch(s,k,c+1,r)