Commit 3b5f890f by BellCodeEditor

save project

parent 3019b6c0
Showing with 33 additions and 0 deletions
# 使用二分查找法,找出9和20在列表里面的索引
num_list = [1, 3, 5, 8, 11, 15, 17, 18, 20, 21]
high = len(num_list)
low = 0
num = 20
while low <= high:
mid = (high + low)//2
guess = num_list[mid]
if guess > num:
high = mid - 1
elif guess == num:
print("找到了")
break
else:
low = mid + 1
if low > high:
print("没找到")
......@@ -7,3 +7,18 @@ num = random.choice(alist)
# 请完善二分查找函数binary_search(),查找出num在列表alist里面的索引位置
def binary_search(alist,num):
low = 0
high = len(alist)-1
print(num)
while low <= high:
mid = (high + low)//2
guess = alist[mid]
if guess > num:
high = mid - 1
elif guess == num:
print("找到了",mid)
return
else:
low = mid + 1
binary_search(alist,num)
\ 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