Commit b49e4ae1 by BellCodeEditor

save project

parent 37f5f1d7
Showing with 21 additions and 12 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)
def binary_search(alist,num):
low=0
high= len(alist)-1
while low <= high:
mid=(low+high)//2 mid=(low+high)//2
wmid = num_list[mid] wmid = alist[mid]
if wmid == wc: if wmid == num:
print(" vvc",wmid) return(mid)
break elif wmid<num:
elif wmid<wc:
low = mid+1 low = mid+1
elif wmid>wc: elif wmid>num:
high=mid-1 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