码迷,mamicode.com
首页 > 其他好文 > 详细

二分法查找

时间:2018-12-27 22:57:18      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:就是   def   数字   递归   NPU   turn   put   inpu   return   

二分法
掐头结尾取中间
查找效率非常的高
# 二分法查找主要的作用就是查找元素
# lst = [1,3,5,7,12,36,68,79]     # 数据集 百万级数据
# nl = int(input("请输入你要查找的数字:"))
# left = 0
# right = len(lst)-1
# while left <= right:
#     mid = (left+right)//2
#     if nl > lst[mid]:
#         left = mid + 1
#     elif nl < lst[mid]:
#         right = mid - 1
#     else:
#         print("存在")
#         break
# else:
#     print("不存在")

# 递归
# def func(n, lst, left, right):
#     mid = (left+right) // 2
#     if left <= right:
#         if n > lst[mid]:
#             left = mid + 1
#             return func(n, lst, left, right)
#         elif n < lst[mid]:
#             right = mid - 1
#             return func(n, lst, left, right)
#         else:
#             print("存在")
#             return mid
#     else:
#         print("不存在")
#         return -1
# n = int(input("请输入你要查找的数:"))
# lst = [1,3,5,7,12,36,68,79]
# func(n, lst, 0, len(lst)-1)

  

二分法查找

标签:就是   def   数字   递归   NPU   turn   put   inpu   return   

原文地址:https://www.cnblogs.com/YangWenYu-6/p/10187562.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!