#二分查询 #有序列表 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)
二分查找
最新推荐文章于 2024-06-30 11:36:13 发布