二分查找就是每次把有序数据一分为二,然后和中间数对比。
def search(list_,key):
'''
二分查找
:param list_: 要查找的数据有序列表
:param key: 要查找的关键
:return:key在序列中的索引号
'''
low,high=0,len(list_)-1
while low
mid = (low + high) // 2
if list_[mid]
low=mid+1
elif list_[mid]>key:
high=mid-1
else:
return mid
l=[2,5,6,9,10,12,13,18,20,21,22]
print(search(l,13))
| 留言与评论(共有 0 条评论) “” |