Commit 0a0a32a0 by BellCodeEditor

save project

parent ebf68f8c
Showing with 15 additions and 2 deletions
......@@ -6,4 +6,18 @@ for i in range(1, 101):
num = random.choice(alist)
# 请完善二分查找函数binary_search(),查找出num在列表alist里面的索引位置
def binary_search(alist,num):
\ No newline at end of file
def binary_search(alist,num):
low = 0
high = len(alist)-1#最后的索引
while low <=high:
mid = (low+high)//2#中间值 //整除
guess = alist[mid]#mid 所对应的值
if guess == num: #如果对上了
return mid
elif guess >num:#如果假设的数大于猜的数,说明数在右边,把high左移的
high = mid-1
elif guess <num:#如果假设的数小于猜的数,说明数在左边,把low右移的
low = mid+1
result = binary_search(alist,num)
print('数是',num)
print('索引:',result)
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