【发布时间】:2017-04-12 07:30:57
【问题描述】:
我正在尝试更改我的代码,而不是查找数组的特定值,如果找到,它将输出一个区间的值,例如 60-70。任何帮助表示赞赏。
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) )
到目前为止,我有这个并希望它找到一个指定的间隔,所以如果我指定 60-70,它会找到介于两者之间的内容。
【问题讨论】:
-
binaryInterval函数有什么作用?它已定义但从未调用。 -
请更清楚要返回的时间间隔和格式。您的示例
60-70在您的示例sequence中似乎没有意义。还是我的部分理解完全错误? -
您的意思是它应该定位该区间内的值,在本例中为
69? -
是的,我正在尝试更改 binaryInterval 函数,以便它可以定位区间中的值,所以是的,例如 69
-
我已经编辑了我写的内容希望它更容易理解
标签: python algorithm search binary