python二分查找的原理分析

1、将中间标值mid的元素e取到数列中,进行查找元素key的比较。

2、如果相等查找成功,若不等,大于则只需在后半部分查找,小于则需在前半部分查找。

实例

defbinary_search(my_list,key):
left=0
right=len(my_list)
whileleft<=right:
mid=(right-left)//2
ifmy_list[left+mid]<key:
left=left+mid+1
elifmy_list[left+mid]>key:
right=left+mid-1
else:
returnleft+mid
return"None"


if__name__=="__main__":
my_list=[1,3,5,7,9,11,13]
print("二分查找的原始数列:",my_list)
print("二分查找的返回结果:",binary_search(my_list,3))

以上就是python二分查找的原理,希望对大家有所帮助。更多Python学习指路:Python基础教程

发表回复