python二分法

#1、数据必须是有序序列
#2、掐头去尾去取中间
#3、每次查找查找都可以过滤一半的数据
#4、折半查找,二分法查找
lst=[1,4,6,34,45]
left=0
right=len(lst)-1

target = 4
post=0
while left<=right:
    mid = (left + right) // 2
    if target>lst[mid]:
        left=mid+1
    elif target<lst[mid]:
        right=mid-1
    else:
        print("找到了这个数",mid)
        break
else:
    print("没有这个数据")

 

posted @ 2021-09-23 09:12  呆呆蒙蒙  阅读(154)  评论(0编辑  收藏  举报