Python 二分查找一个数

匿名 (未验证) 提交于 2019-12-02 22:11:45
版权声明:。 https://blog.csdn.net/weixin_43778797/article/details/90243202

1.

 # 一维列表 # 条件:起始位置小于等于结束位置 nums = [4, 1, 5, 10, -1, 9, 3, 2, 13, 7, ] print("原来的列表为:", nums)  nums.sort()     # 进行排序 print("列表排序后为:", nums) num = int(input("请输入你要查找的数:"))   # 需要查找的数  pos = -1    # 默认需要查找的数的位置为-1  start = 0 end = len(nums)-1 while start <= end:     mid = (start+end)//2     if num == nums[mid]:    # 如果要找的数等于中间的这个数         pos = mid           # 那么位置就为中间这个数的位置         break     elif num < nums[mid]:   # 若要找的数小于中间         end = mid - 1        # 中间减一     else:                   # 若要找的数大于中间,则中间加一         start = mid + 1  # 判断是否找到 if pos != -1:               # 若找到了     print("%d位置是%d" % (num, pos)) else:                       # 若没找到     print("没找到%d" % num) 

文章来源: https://blog.csdn.net/weixin_43778797/article/details/90243202
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!