python使用二分法查找数值

上代码:

# encoding:utf-8
import random
def search(alist,value):
    n=len(alist)
    start=0
    end=n-1
    while start<=end:
        mid=(start+end)//2
        if alist[mid]==value:
            print('要找的值是:%d'%alist[mid])
            return
        elif alist[mid]<value:
            print('猜小了')
            start=mid+1
        else:
            print('猜大了')
            end=mid-1
            
if __name__ == '__main__':
    alist=[i for i in range(0,101)]
    value=random.randint(0,100)
    search(alist, value)
            

运行截图:
在这里插入图片描述

发布了15 篇原创文章 · 获赞 12 · 访问量 222

猜你喜欢

转载自blog.csdn.net/weixin_45116096/article/details/105310300