二分查找简单实现
闲来无事,写个二分查找demo,代码简单,自己体会哟。
def binary_search(arr, no):
mid = len(arr)//2
if len(arr) == 1 and arr[mid] != no:
print("亲,你找的数字%s不在列表里" % no)
return
if len(arr) < 1:
print("亲,请输入正确的列表!")
return "data error"
if no > arr[mid]:
binary_search(arr[mid:], no)
elif no < arr[mid]:
binary_search(arr[:mid], no)
elif no == arr[mid]:
print("找到你了: %s" % arr[mid])
arr1 = [1, 2, 3, 5, 6, 7, 9, 11]
binary_search(arr1, 6)