Commit fc2f59c2 by BellCodeEditor

save project

parent a9c5e3da
Showing with 24 additions and 15 deletions
# 使用二分查找法,找出9和20在列表里面的索引 # 使用二分查找法,找出9和20在列表里面的索引
num=9 import random
num_list = [1, 3, 5, 8, 11, 15, 17, 18, 20, 21] alist=[]
low=0 for i in range(1,100):
nigh=len(num_list)-1 alist.append(i)
while high>=low: num=random.choice(alist)
mid=(low+high)//2
guess_num=num_list[mid] def binary_search(alist,num):
if guess_num==num: low=0
print("找到了,它在列表中的位置是:",mid) high=len(alist)-1
break while high>=low:
elif guess_num < num: mid=(low+high)//2
low=mid+1 guess_num=alist[mid]
elif guess_num>num: if guess_num==num:
high=mid-1 return mid
\ No newline at end of file elif guess_num < num:
low=mid+1
elif guess_num>num:
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