Ich versuche, meinen Code zu ändern, anstatt einen bestimmten Wert des Arrays zu finden, wird es den Wert eines Intervalls ausgeben, wenn es gefunden wird, Beispiel ist 60-70. Jede Hilfe wird geschätzt.Binärsuchalgorithmus mit Intervall
def binary (array, value):
while len(array)!= 0:
mid = len(array) // 2
if value == array[mid]:
return value
elif value > array[mid]:
array = array[mid+1:]
elif value < array [mid]:
array = array[0:mid]
sequence = [1,2,5,9,13,42,69,123,256]
print("found", binary(sequence,70))
Ich habe dies so weit und wollen, dass es einen bestimmten Intervall zu finden, also wenn ich 60-70 angeben wird es finden, was dazwischen ist.
Was bewirkt die Funktion 'binaryInterval'? Es ist definiert, aber nie aufgerufen. – Gabriel
Bitte geben Sie an, welches Intervall zurückgegeben werden soll und in welchem Format. Ihr Beispiel '60-70' scheint in Ihrer Beispielsequenz nicht sinnvoll zu sein. Oder ist mein partielles Verständnis komplett ausgeschaltet? –
Meinst du, dass es Werte finden sollte, die in diesem Intervall sind, in diesem Fall "69"? –