Commit c55e3a74 by BellCodeEditor

save project

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