二分查找python实例

	二分查找的前提是,数据的有序性,如果拿到的不是有序的,可以先用sort()函数排序。二分查找的思路很简单,就是把数据取中点分成连段,所以也叫折半查找,相对于顺序查找,从理论上节省时间,提高效率了。来个图演示一下。
	先是
	![在这里插入图片描述](https://img-blog.csdnimg.cn/20190315200802912.png)

假设要查找的数num大于start,又小于mid,那么end=mid-1,start还是不变,这样的话查找范围就缩小了一半。
在这里插入图片描述
假设要查找的数num大于mid,又小于end,那么start=mid+1,end还是不变。
在这里插入图片描述
下面来用代码实现。

list_01 = [1,2,3,4,5,6,12,14,15,21,23,25,32]
num = int(input(‘请输入您要查找的数:’))
start = 0
end = len(list_01) - 1
while start<=end:
mid = (start+end)//2#向下取整
if list_01[mid] == num:
print(‘找到了’)
break
elif list_01[mid]>num:
end = mid -1
elif list_01[mid]<num:
start = mid + 1
else:
print(‘没找到’)
学习要坚持,今天的努力,是为了美好的明天!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值