A = [int(n) for n in input("请以空格为间隔输入一个数组").split()]
A.sort() #将数组按从小到大顺序排序
print(A)
target = int (input("请输入您要查找的整数"))
def BinarySearch(A,target,num):
low = 0
high = len(A)-1
while low <= high: #判定列表长度不为空,则查找
num = int(low+((high-low)/2)) #将列表长度切半,并取出长度
if target < A[num]: #如果目标值小于中间数
high = num-1 #从前半段继续找
elif target > A[num]: #如果目标值大于中间数
low = num+1 #从后半段继续找
else: #如果找到了
return print("结果:%s在数组中的位置是%s"%(target,num))
return print("-1") #如果没有找到,返回-1
num = len(A)
print(BinarySearch(A,target,num))
2条回答 默认 最新
悬赏问题
- ¥99 关于#javascript#的问题:怎么样写一个浏览器插件的js,填充浏览器元素:
- ¥15 关于#hadoop#的问题:按照老师上课讲的步骤写的
- ¥20 有人会用这个工具箱吗 付fei咨询
- ¥30 成都市武侯区住宅小区兴趣点
- ¥15 Windows软实时
- ¥15 自有服务器搭建网络隧道并且负载均衡
- ¥15 opencv打开dataloader显示为nonetype
- ¥15 MacOS 80端口外网无法访问
- ¥50 js逆转反解密-会的来
- ¥15 wrodpress如何调取数据库并展示