Commit f03861ef by BellCodeEditor

save project

parent 9bbf83b5
Showing with 8 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]
def x(quest): def x(alist,quest):
low=0 low=0
high=len(num_list)-1 high=len(alist)-1
while True: while True:
mid=(low+high)//2 mid=(low+high)//2
if num_list[mid]>quest: if alist[mid]>quest:
high=mid-1 high=mid-1
elif num_list[mid]==quest: elif alist[mid]==quest:
print('找到了,索引是:',num_list[mid]) return mid
break break
elif high<low: elif high<low:
print('没找到') return None
break break
else: else:
low=mid+1 low=mid+1
x(4) print(x(num_list,5))
\ No newline at end of file \ 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