博客已经搬家到“捕获完成”:
https://www.v2python.com
一个二分法的具体例子:
#算法图解简单查找与二分查找:01二分查找法
def binary_search(list,item):
low = 0
high = len(list)-1 #长度为整个长度减1,因为起始位为0
while low <= high:
mid = (low+high)//2 #注意这里,需要除法取整
guess = list[mid]
if guess == item:
return mid
if guess > item:
high = mid-1
else:
low = mid+1
return None
if __name__== '__main__':
my_list = [1,3,5,7,9,11]
print(binary_search(my_list,7))
print(binary_search(my_list,-1))