python二分検索
3575 ワード
整列配列、二分検索
numbers = [1,3,5,6,7,8,13,14,15,17,18,24,30,43,56]
head,tail = 0,len(numbers)
search = 24
while tail -head >1:
mid = (head + tail)//2
if search == numbers[mid]:
ans = mid
break
elif search < numbers[mid]:
tail = mid
else :
head = mid
else:
# tail == head , , head ,
if search == numbers[head]:
ans = head
else:
ans=-1
print(ans)