Commit 818a08f4 by BellCodeEditor

save project

parent 34a1b6f2
Showing with 15 additions and 14 deletions
# 使用二分查找法,找出9和20在列表里面的索引 # 使用二分查找法,找出9和20在列表里面的索引
num_list = [1, 3, 5, 8, 11, 15, 17, 18, 20, 21] num_list = [1, 3, 5, 8, 11, 15, 17, 18, 20, 21]
low=0 def binary_search(alist,num):
high=len(num_list)-1 low=0
bingo_num=20 high=len(num_list)-1
while low<=high: while low<=high:
mid=(low+high)//2 mid=(low+high)//2
guess_num=num_list[mid] guess_num=alist[mid]
if guess_num==bingo_num: if guess_num==num:
print(mid) print(mid)
break break
elif guess_num<bingo_num: elif guess_num<num:
low=mid+1 low=mid+1
else: else:
high=mid-1 high=mid-1
print(mid) return None
result=binary_search(num_list,17)
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