Commit 10c455b3 by BellCodeEditor

save project

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