Commit e25cb155 by BellCodeEditor

save project

parent 3682a17d
Showing with 10 additions and 7 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
bingo_num = 20
while low <= high: while low <= high:
mid = (low + high)//2 mid = (low + high)//2
guess_num = num_list[mid] guess_num = num_list[mid]
if guess_num == bingo_num: if guess_num == bingo_num:
print(mid) return mid
break
elif guess_num < bingo_num: elif guess_num < bingo_num:
low = mid +1 low = mid +1
else: else:
low = mid - 1 low = mid - 1
result = binary_search(num_list,20)
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