Ich versuche, einen binären Suchalgorithmus in Python zu implementieren. Ich schrieb diesen Code auf meinem Handy, aber es kompiliert nicht. Und ich weiß nicht, warum es nicht kompiliert. (ich habe es nicht auf einem Computer ausprobiert.)Python-Code für Binärsuchalgorithmus kompiliert nicht
def BinarySearch(sList, search):
res=0
sortedList=sorted(sList)
x=int(len(sortedList)/2)
mid=sortedList[x]
def DivideSearch(sortedList ,search):
first=sortedList[:mid ]
second=sortedList[mid:]
if first[len(first)-1]<search:
DivideSearch (first, search)
elif second[len(second)-1]>search:
DivideSearch (second, search)
elif len(first)==1:
res=first.pop()
elif len(second)==1:
res=second.pop()
if res==search:
return res
numbers=[1,2,3,4,5,6,7,8,9]
guess=3
print(BinarySearch(numbers,guess))
Was aus der Zusammenstellung dieser Code hält? Was sind meine Fehler und wie kann ich sie beheben?
Sie den Fehler enthalten sollte es Ihnen in Ihrer Frage gibt !!!, und die Vertiefung ist nicht gut ,,,, sollten Sie über Python Einzug lernen http : //www.python-course.eu/python3_blocks.php – Eliethesaiyan
@Eliethesaiyan ich habe keinen fehler und ich habe kein ergebnis – ufukcalimli
der einzug ist sehr schlecht, rückkehr res ist unter if.res == suche, im fall res ist nicht gleich zu suchen, es wird nichts zurückgeben ... daher wirst du nichts sehen ... und wieder ... es ist schwer mit deiner Einrückung zu sagen..als erstes repariere es ...! – Eliethesaiyan