Commit 62be7a43 by BellCodeEditor

save project

parent 2b554a19
Showing with 22 additions and 17 deletions
# 使用二分查找法,找出9和20在列表里面的索引 import random
num_list = [1, 3, 5, 8, 11, 15, 17, 18, 20, 21] alist=[]
num=20 for i in range(1,101):
low=0 alist.append(i)
high=len(num_list)-1 num=random.choice(alist)
while low<=high: def binary_search(alist,num):
mid=(low+high)//2 low=0
guess_num=num_list[mid] high=len(alist)-1
if guess_num==num: while low<high:
print("找到了,他在列表里的索引",mid) mid=(low+high)//2
break guess_num=alist[mid]
elif guess_num<num: if guess_num==num:
low=mid+1 return mid
else: elif guess_num<num:
high=mid-1 low=mid+1
num=20 else:
\ No newline at end of file high=mid-1
return None
result=binary_search(alist,num)
print("老师给的数是",num)
print("在列表里面的索引为",result)
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment