Commit 631bf58b by BellCodeEditor

auto save

parent adaf6f8a
Showing with 19 additions and 2 deletions
...@@ -6,4 +6,21 @@ for i in range(1, 101): ...@@ -6,4 +6,21 @@ for i in range(1, 101):
num = random.choice(alist) num = random.choice(alist)
# 请完善二分查找函数binary_search(),查找出num在列表alist里面的索引位置 # 请完善二分查找函数binary_search(),查找出num在列表alist里面的索引位置
def binary_search(alist,num): def binary_search(alist,num):
\ No newline at end of file low = 0 # 最低索引
high = len(alist)-1 # 最高索引
while True: # 无限循环
mid = (low+high) // 2 # 中间索引
if alist[mid] == num: # 中间值 是否等于 要查找的数
return mid
elif low > high: # 最低索引大于最高索引
return None
elif alist[mid] < num: # 中间值 小于 要查找的数
low = mid + 1 # 最低索引等于中间索引加1
else: # 否则
high = mid - 1 # 最高索引等于中间索引 减 1
result = binary_search(alist,num)
print('找到了',alist[result],'他的索引位置是',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