算法之二分法
二分法
要使用二分法,数据集必须有序
l = [1, 2, 3, 5, 6, 7, 88, 99, 101, 555, 1000, 5555, 99999]
def index(index_num, list):
if list == []:
print('没有该数')
return
mid_index = len(list) // 2
if index_num > list[mid_index]:
right_list = list[mid_index + 1:]
index(index_num, right_list)
elif index_num < list[mid_index]:
left_list = list[:mid_index]
index(index_num, left_list)
else:
print('找到了')
index(5555, l)
缺点:找不到需要添加元素结束条件
如果要找的数在第一个位置,还没有依次寻找的速率快

浙公网安备 33010602011771号