Commit b49e4ae1 by BellCodeEditor

save project

parent 37f5f1d7
Showing with 24 additions and 15 deletions
# 使用二分查找法,找出9和20在列表里面的索引 import random
num_list = [1, 3, 5, 8, 11, 15, 17, 18, 20, 21]
low=0 alist = []
high=9 for i in range(1,101):
wc=20 alist.append(i)
while low <= high: num = random.choice(alist)
mid=(low+high)//2 def binary_search(alist,num):
wmid = num_list[mid] low=0
if wmid == wc: high= len(alist)-1
print(" vvc",wmid) while low <= high:
break mid=(low+high)//2
elif wmid<wc: wmid = alist[mid]
low = mid+1 if wmid == num:
elif wmid>wc: return(mid)
high=mid-1 elif wmid<num:
low = mid+1
elif wmid>num:
high=mid-1
return None
wc = binary_search(alist,num)
print('老师给的数是',num)
print('他在列表里的索引是',wc)
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