初学python:二分法查找

#sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数
#list.sort(cmp=None, key=None, reverse=False)
#cmp -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序
#key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序
#reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)

list_sample = [1, 7, 11, 22, 33, 44,  66, 78]

target_num = 44

low = 0
high = len(list_sample)-1

if target_num in list_sample:
    print ('go on')

while True:

    mean = int((low + high)/2)
    print (mean)
    if list_sample[mean] == target_num:
        print (mean)
        break   
    elif list_sample[mean] > target_num:
        high = mean - 1
    else:
        low = mean + 1
发布了37 篇原创文章 · 获赞 2 · 访问量 7630

猜你喜欢

转载自blog.csdn.net/bingozb/article/details/98474673