打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Python算法之二分法01
userphoto

2022.06.20 福建

关注

问题:使用二分法的方式在列表中寻找指定的数据

代码:

''' 使用二分法在有序列表中找出指定的值'''def BinarySearch(arr, key): # 记录数组的最高位和最低位 min = 0 max = len(arr) - 1 if key in arr: # 建立一个死循环,知道找到key while True: # 得到中位数 center = int((min + max) / 2) # key在数组左边 if arr[center] > key: max = center - 1 # key在数组右边 elif arr[center] < key: min=center+1 #key在数组中间 elif arr[center]==key: print(str(key) + '在数组里面的第' + str(center) + '个位置') return arr[center] else: print('没有该数字!')if __name__ == '__main__': arr = [1, 6, 9, 15, 26, 38, 49, 57, 63, 77, 81, 93] while True: key = input('请输入你要查找的数字:') if key == ' ': print('谢谢使用!') break else: BinarySearch(arr, int(key))

运行结果:

请输入你要查找的数字:6363在数组里面的第8个位置
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
python算法 | 二分法查找基本思想、场景分析、python如何实现二分法查找(实例)
山峰数组的顶部
数组复习(1-5)
Java实现简单的二分法查找int数组中的某值
一个简单的二分法实现
PHP处理数组常用的几个函数
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服