Commit c55e3a74 by BellCodeEditor

save project

parent 0d47db60
Showing with 16 additions and 13 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]
num = 20
low = 0
high =len (num_list) - 1
while low <= high: def binary_search(alist,num):
mid = (low+high) // 2 low = 0
guess = num_list[mid] high =len (num_list) - 1
if guess == num: while low <= high:
print("找到了",num) mid = (low+high) // 2
break guess = alist[mid]
elif guess < num: if guess == num:
low = mid + 1 return mid
elif guess > num: elif guess < num:
high = mid - 1 low = mid + 1
else:
high = mid - 1
return None
result = binary_search(num_list,16)
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