def BinSearch(ls, value):
"""
使用二分法查找时列表内的元素必须是已经排好序的
:param ls:
:param value:
:return:
"""
minValue = 0
maxValue = len(ls) - 1
if value in ls:
while True:
center = int((minValue + maxValue) / 2)
if ls[center] > value:
maxValue = center - 1
elif ls[center] < value:
minValue = center + 1
elif ls[center] == value:
print("元素的索引是%s" % center)
break
else:
print("没有找到元素 %s" % value)
if __name__ == "__main__":
# datas = range(1, 1000)
datas = [88, 55, 22, 11, 99, 66, 77]
datas.sort()
print(datas)
BinSearch(datas, 88)

转载于:https://www.cnblogs.com/SunshineLittleCat/p/8279245.html

二分法查找python的实现相关推荐

  1. 二分法查找 - python实现

    二分法查找 二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好:其缺点是要求待查表为有序表,且插入删除困难.因此,折半查找方法适用于不经常变动而查找频繁的有序列表.首先,假设表中元素是按升 ...

  2. python实现二分法查找_python3 二分法查找

    ''' 二分法查找 有序列表 掐头去尾取中间 查找列表中xx在不在列表中,在,则返回索引值 ''' # lst = [1, 4, 6, 8, 9, 21, 23, 26, 35, 48, 49, 54 ...

  3. python二分法查找程序_Python程序查找最大EVEN数

    python二分法查找程序 Input N integer numbers and we have to find the maximum even number. 输入N个整数,我们必须找到最大的偶 ...

  4. python二分法查找程序_查找Python程序的输出| 套装2(基础)

    python二分法查找程序 Program 1: 程序1: a = 10 b = 3 res = a/b print "a/b: ", res res = float(a/b) p ...

  5. python二分法查找程序_Python程序查找地板划分

    python二分法查找程序 When we divide a number by another number – division operator (/) return quotient it m ...

  6. python实现二分法查找_python二分法查找

    下面是一段用Python实现的二分法查找代码#encoding=utf-8 import sys def search2(a,m): low = 0 high = len(a) - 1 while l ...

  7. 微课|中学生可以这样学Python(例8.25):二分法查找

    适用教材: 董付国,应根球.<中学生可以这样学Python>.清华大学出版社,2017. 第8章  常用算法的Python实现 例8.25  二分法查找 京东购买链接:https://it ...

  8. 可自定义匹配规则查找控件_懂Excel轻松入门Python数据分析包pandas(二十八):二分法查找...

    此系列文章收录在公众号中:数据大宇宙 > 数据处理 > E-pd 转发本文并私信我"python",即可获得Python资料以及更多系列文章(持续更新的) 经常听别人说 ...

  9. python二分法查找时间点_Python 二分法查找

    # 二分法查找主要的作用就是查找元素 lst = [1,3,5,7,12,36,68,79] # 数据集 百万级数据 num = int(input("请输入你要查找的元素信息:" ...

  10. python二分法查找数字_Python——二分法查找

    #递归实现二分法查找 data=[1,3,6,7,9,12,14,16,17,18,20,21,22,23,30,32,33,35]defbinary_search(dataset,find_num) ...

最新文章

  1. ab串(要求a在b的右面)
  2. 2019第十二届“认证杯”数学建模(第二阶段)
  3. u盘安装linux18.04.3遇到的坑
  4. leetcode 107. 二叉树的层次遍历 II(维护两个队列,通过异或运算切换)
  5. linux驱动大全,linux驱动
  6. 尽说大实话!周鸿祎:有的软件会偷偷打开你的摄像头或麦克风
  7. Firefox下去掉密码自动填充
  8. 操作系统可实训可练习的项目
  9. [随感]GIS开发的困惑
  10. redis 系列16 持久化 RDB
  11. 光流在视频检测和分割的再应用
  12. 如何复制百度文库中的内容
  13. Java8 map转list集合
  14. javaee实训报告总结_javaee实习报告.doc
  15. Laraval-admin 自定义form组件
  16. 初一计算机下册理论知识,有关七年级信息技术下册的教学计划
  17. MooTools and Sizzle
  18. Java计算机IT编程文档
  19. Python第三方库安装——使用vscode、pycharm安装Python第三方库
  20. 网页采集器-八爪鱼采集器

热门文章

  1. 帆软JS实现局部刷新CPT
  2. SQL Server2008函数大全(完整版)
  3. python model如何获取分类错误的数据_如何用python获取美股数据?
  4. redis smembersmap_Redis五种数据类型
  5. 限制root远程登录
  6. NodeJs之http
  7. Eclipse-cdt 配合 gdbserver 进行 arm 程序远程调试 上
  8. MongoDB学习之简介、下载、安装
  9. 让电脑只能上允许的QQ号
  10. TEM:基于树模型构建可解释性推荐系统