"""
search.py 二分查找方法训练
"""
# list_为有序数列,key为要查找的关键值,返回key在数列中的索引号
def search(list_,key):
# 第一个数index 最后一个数index
low,high = 0,len(list_) - 1
# 循环每次去除一半内容
while low <= high:
mid = (low + high) // 2
# 取后半部分
if list_[mid] < key:
low = mid + 1
# 取前半部分
elif list_[mid] > key:
high = mid - 1
else:
return mid
l = [1,2,3,4,5,6,7,8,9,10]
print("Key index:",search(l,10))
二分查找
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 查找概念 查找(Searching): 即根据给定的某个值,在查找表中确定一个其关键字给定值的数据元素(或记录)。...
- 原文参考:https://www.jianshu.com/p/2e16572c9ddc 一、什么是粘包? 经常我们...