#二分查询 #有序列表 from asyncio.log import logger def binary_search(arr,find): ''' :param arr: :param find: :return: ''' first = 0 lasted = len(arr) - 1 while first <= lasted: mid = (first+lasted)//2 if arr[mid] == find: logger.debug("在mid处找到") return mid elif arr[mid] > find: lasted = mid-1 elif arr[mid] < find: first = mid+1 else: return -1 if __name__ == '__main__': arr_list = [1,3,7,9,99,101] find = int(input("请输入一个数字,查找是否在列表中")) res = binary_search(arr_list,find) print(res)
来源:https://blog.csdn.net/chuanying_xiaoqi/article/details/99456684