Commit fbc0376c by BellCodeEditor

save project

parent 04e80a2f
Showing with 23 additions and 11 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)
def binary_search(alist,num):
low=0
high=len(alist)-1
while low <= high:
mid=(low+high)//2 mid=(low+high)//2
a=num_list[mid] guess=alist[mid]
if a==9: if guess==num:
print("找到了",mid) return mid
break elif guess<num :
elif a<bingo_num :
low=mid+1 low=mid+1
elif a>bingo_num: else:
high=mid-1 high=mid-1
return None
result = binary_search(alist,num)
print("老师给的数是",num)
print("他在",result)
\ No newline at end of file
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