android二分查找法简书,【PYTHON】二分查找算法
二分查找:
在一段数字内,找到中间值,判断要找的值和中间值大小的比较。
如果中间值大一些,则在中间值的左侧区域继续按照上述方式查找。
如果中间值小一些,则在中间值的右侧区域继续按照上述方式查找。
直到找到我们希望的数字。
def search_data(data,data_find):
# 中间值的索引号的定义:数组长度/2
mid = int(len(data)/2)
# 判断从1开始的数字数组内查找
if data[mid] >= 1:
# 如果我们要找的值(data_find)比中间值(data[mid])小
if data[mid] > data_find:
print("你要找的数字比中间值[%s]小..." % data[mid])
# 在中间值(data[mid])的左侧继续查找,在此函数中继续循环
search_data(data[:mid],data_find)
# 如果我们要找的值(data_find)比中间值(data[mid])大
elif data[mid] < data_find:
print("你要找的数字比中间值[%s]大..." % data[mid])
# 在中间值(data[mid])的右侧继续查找,在此函数中继续循环
search_data(data[mid:],data_find)
else:
# 如果我们要找的值(data_find)既不比中间值(data[mid])大,也不比中间值(data[mid])小,则就是它
print("这就是你要找的[%s]!" % data[mid])
else:
print("不好意思,没有找到你要的值...")
if __name__ == '__main__':
# 创建一个1到6000万的连续数字数组
data = list(range(60000000))
# 调用函数找到95938的值
search_data(data,95938)
android二分查找法简书,【PYTHON】二分查找算法相关推荐
- 经典算法之左边界二分查找法(俗称左边界二分搜索法)
经典算法之左边界二分查找法(俗称左边界二分搜索法) 文章目录 经典算法之左边界二分查找法(俗称左边界二分搜索法) 前言 一.什么左边界二分查找法? 二.代码实现 总结 前言 就算法而言,我们主要学习的 ...
- 线性查找法java代码_Java线性查找和二分查找
Java线性查找和二分查找. 一 线性查找 定义:在一列给定的值中进行搜索,从一端开始逐一检查每个元素,直到找到所需元素的过程. 线性查找又称为顺序查找.如果查找池是某种类型的一个表,比如一个数组,简 ...
- python list查找元素_使用python list 查找所有匹配元素的位置实例
使用python list 查找所有匹配元素的位置实例 如下所示: import re word = "test" s = "test abcdas test 1234 ...
- 递归折半查找法 c语言程序,折半查找法的递归和非递归形式
/* 1.折半查找的查找过程是:先确定待查记录所在区间,然后逐步缩小范围至到找到或者找不到该记录为止. 2.折半查找的性能分析可以由判定树得出,折半查找在查找成功时给定值进行比较的关键字个数至多为⌊l ...
- python从键盘输入一个列表计算输出元素的平均值_python列表查找值_在Python中查找列表平均值的5种方法...
python列表查找值 Hi Folks! In this article, we will have a look at the various ways to find the average o ...
- 【C语言】用二分查找法在有序数组中查找具体的某个数
当给定一个有序数组,而我们要在这个数组中查找某个数时,我们常常用从头到尾的排除法遍历寻找,但是这种方式及其低效,n个数的数组最差要找n次.而后面我们会知道,二分查找法则高效的多,最差要找log以2为低 ...
- android 名片识别 简书,python 腾讯API 名片识别 通用图片转文字
记录名片识别和图片转文字. 腾讯AI开放平台提供的名片OCR很强大, 而且可以免费使用, 所以本文使用的是腾讯AI开放平台. 腾讯AI开放平台API调用需要注意签名方法, 请查看之前文章传送门 名片O ...
- 简书python自动化运维_简明Python开发教程(4):网络自动化运维的曙光
写在前面 本打算自动登陆一台路由器,执行查询配置指令,然后用正则表达式分析,获取该路由器的接口连接关系. 现在由于网络问题,导致无法直接telnet路由器,只能通过其他方式获取配置文件,如读取本地文件 ...
- 简书python数据分析基础reading_Python数据分析基础ReadingDay5_sqlite3
reading Foundations for Analysis with Python Day 5 <Python数据分析基础>封面 这篇笔记开始记录数据库的内容,会用两篇笔记分别讲述P ...
最新文章
- LeetCode简单题之只出现一次的数字
- 网页测试本地服务器_音视频开发搭建一个直播服务器
- myeclipse按.自动提示方法
- 为什么 WebAssembly 更快?
- Ubuntu: 为firefox安装flash插件
- 两种方式调试JNI中DLL(动态链接库)
- elementui 隐藏输入框_elementui select下拉框输入完全匹配值则下拉隐藏
- (持续更新)webstorm快捷键及术语翻译
- 【APP接口开发】常用HTTP响应头状态码详解
- word List 31
- 京东抢购助手_[Windows] 京东极速抢购助手V2.0,支持京东健康+扫货抢购
- Nat. Commun.|北京大学吴华君,基因组3D结构调控胚胎干细胞分化
- 小学计算机教案表格式,小学信息技术教案表格数据处理.docx
- TCP的慢启动、拥塞避免、重传、快恢复乱七八糟总是记不清?11个连环问让你一次性打通任督二脉
- 2017.12.19
- 退出Activity
- java 区间api_Java 常用API(一)
- 学习PyQt5(四):PyQt5的控件Spacers
- wow.js动画插件
- ibator mysql 分页,ZUI分页器的使用案例(ECLIPSE SMS项目)