Commit 3bd55d60 by BellCodeEditor

save project

parent 16431eff
Showing with 19 additions and 20 deletions
# 使用二分查找法,找出9和20在列表里面的索引 import random
bingo_num=20 alist=[]
num_list = [1, 3, 5, 8, 11, 15, 17, 18, 20, 21] for i in range(1,101):
list=0 alist.append(i)
low=0 num=random.choice(alist)
high=len(num_list)-1
while low<=high: def binary_search(alist,num):
low=0
high=len(alist)-1
while low<=high:
mid=(low+high)//2 mid=(low+high)//2
guess_num=num_list[mid] guess=alist[mid]
if guess_num==bingo_num: if guess==num:
print("找到了,它在列表里的索引是:",mid) return mid
break elif guess<num:
elif guess_num<bingo_num:
low=mid+1 low=mid+1
elif guess_num>bingo_num: else:
high=mid high=mid-1
return None
a=binary_search(alist,20)
print(a)
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