Commit 5beca671 by BellCodeEditor

save project

parent c52e21a9
Showing with 23 additions and 22 deletions
# 使用二分查找法,找出9和20在列表里面的索引 import random
num_list = [1, 3, 5, 8, 11, 15, 17, 18, 20, 21] alist=[]
low,high=0,len(num_list)-1 for i in range(1,101):
while True: alist.append(i)
num=int(input("输入:")) num=random.randint(1,101)
if high>=low: def binary_search(list,sum):
while True: low,high=0,len(list)-1
mid=(high+low)//2 number=sum
gusses=num_list[mid] while high>=low:
if gusses==num: mid=(high+low)//2
print("索引为",mid) gusses=list[mid]
if gusses==number:
return mid
elif gusses<number:
low=mid+1
if high<low:
break break
elif gusses<num: else:
low=mid+1 high=mid-1
if high<low: if high<low:
print("此数不存在") break
break a=binary_search(alist,num)
else: print(num,a)
high=mid-1 \ No newline at end of file
if high<low:
print("此数不存在")
break
\ 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