二分查找算法(折半查找算法)

devtools/2024/10/21 8:48:55/

是一种在有序数组中查找特定元素的搜索算法。该算法通过将数组分成两半,逐步缩小查找范围来提高查找效率。具体来说,每次比较中间元素与目标值,根据比较结果决定是继续在左半部分还是右半部分进行查找,从而每次迭代都能排除一半的查找空间,时间复杂度对数级别O(logn)

def binary_search(lst, element):"""二分查找"""left = 0right = len(lst)-1count = 0 # 记录查询次数while left <= right:mid = (left + right)//2 #获得中间位置count += 1if element < lst[mid]:right = mid - 1elif element > lst[mid]:left = mid + 1else:print("查到了元素,用了",count,"次")return midreturn -1 # 上面while程序结束后,仍然未找到,说明元素不在列表中,返回-1表示。
p = binary_search(a,19)
print(f"索引位置:{p}")


http://www.ppmy.cn/devtools/127517.html

相关文章

Java 输入与输出(I\O)之字节缓冲流【BufferedInputStream】【BufferedOutputStream】详解

缓冲流是Java I/O中的一个重要概念&#xff0c;它可以提高文件读写的性能。 由于磁盘的IO处理速度远低于内存的读写速度。 为了提高文件读写性能&#xff0c;我们可以使用缓冲流。缓冲流使用内存缓冲区&#xff0c;可以一次性读取或写入大量数据&#xff0c;从而减少与磁盘的交…

前端_007_Axios库

文章目录 配置响应结构拦截器 引入&#xff1a; 官网&#xff1a; https://www.axios-http.cn/ 一句话简介&#xff1a;浏览器里基于XmlHttpRequests&#xff0c;node.js里基于http模块封装的网络请求库&#xff0c;使用非常方便 //通用例子axios({method:post,url: request…

N9305高品质mp3音频语音芯片ic在早教故事机的应用方案

随着人们对教育的重视程度不断提高&#xff0c;儿童早教机已经成为了很多家庭的教育必备品。N9305音乐芯片在早教故事机中的应用&#xff0c;不仅为孩子们带来了丰富多彩的故事世界&#xff0c;还以其卓越的音质表现和功能&#xff0c;进一步提升了早教体验。 九芯电子N9305高品…

Java 多线程(四)—— 线程安全 与 volatile 与 单例模式

什么是线程安全 在进行多线程编程的时候&#xff0c;当我们编写出来的多线程的代码运行结果不符合我们的预期的时候&#xff0c;这时候就是 bug&#xff0c;这种 bug 是由于多线程的问题而产生出来的 bug 我们称之为 线程安全问题 当我们编写出来的多线程代码运行之后的结果符…

【文献及模型、制图分享】长江中游经济区“水—能源—粮食”系统与城市绿色转型适配性研究

文献介绍 评价资源系统与城市绿色发展适配程度是判断城市健康程度的关键。通过构建“系统压力指数—优劣解距离法&#xff08;TOPSIS&#xff09;—脱钩弹性模型&#xff08;Tapio&#xff09;”评价体系&#xff0c;对2012—2021年长江中游经济区“水—能源—粮食”&#xff…

状态机与行为树的实现;Behavior Designer的使用与自写状态机的几种方法;

以下部分内容将会涉及插件BehaviorDesigner 代码仅为演示所需&#xff0c;并非实际实现代码&#xff0c;非本人所使用代码&#xff1b; 前往个人博客&#xff0c;获取更好的阅读体验 状态机与行为树 为何写&#xff1f; 笔者在初学的时候并不写状态机&#xff0c;而是写到一…

ip-geoaddress-generator 基于IP的真实地址生成器

ip-geoaddress-generator 是一个基于 Web 的在线应用程序&#xff0c;能够根据 IP 地址生成真实的随机地址信息。通过多个 API 获取位置数据和随机用户信息&#xff0c;该工具为用户提供了完整的虚拟身份。它由 Next.js 和 Radix UI 构建&#xff0c;具备自动检测当前 IP 地址和…

数据结构:二叉树、堆

目录 一.树的概念 二、二叉树 1.二叉树的概念 2.特殊类型的二叉树 3.二叉树的性质 4.二叉树存储的结构 三、堆 1.堆的概念 2.堆的实现 Heap.h Heap.c 一.树的概念 注意&#xff0c;树的同一层中不能有关联&#xff0c;否侧就不是树了&#xff0c;就变成图了&#xff…