恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

折半查找(二分查找)

  • 首页
  • 资讯中心
  • /
  • 折半查找(二分查找)

相关资讯

进销存源码怎么选?从库存流水到二次开发避坑指南 2026/9/1 5:20:14
算法面试高频考点解析:KMP、粒子群、Redis与分布式锁实战 2026/9/1 5:15:14
STM32F030驱动WS2812B灯带:PWM+DMA方案与避坑指南 2026/9/1 5:15:14

最新资讯

闭源大模型API网络故障下的Token扣费机制与防护实践
智能化流程中的多线程控制角色详解
杭州乡镇街道矢量边界数据包:从SHP原理到GIS实操指南
Codex平台配置GPT-5.6-Sol与GPT Image2模型实践指南
交线提取算法动态库设计:从核心算法到接口封装与接入实践
腾讯2026届校招薪资曝光:年薪百万不是梦,青云计划T9到T12年薪百万到300万+,收藏这份高薪Offer攻略!

今日推荐

自研推理加速器Redwood:两周内实现PyTorch模型高效部署的实战教程
V4L2摄像头采集实战:从camera_client.rar到出图全流程解析
从“谁发明了钢琴键”到知识问答智能体:RAG与记忆工程实践

本周热门

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析
数字电路时序基石:深入理解建立时间与保持时间
蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

本月精选

自研推理加速器Redwood:两周内实现PyTorch模型高效部署的实战教程
V4L2摄像头采集实战:从camera_client.rar到出图全流程解析
从“谁发明了钢琴键”到知识问答智能体:RAG与记忆工程实践

折半查找(二分查找)

发布时间:2026/9/1 5:20:14
折半查找(二分查找) 文章目录算法思想算法的实现查找效率分析折半查找判定树的构造向下取整向上取整折半查找的查找效率折半查找又称“二分查找”仅适用于有序递增 / 递减 的顺序表。算法思想必须基于顺序存储数组且元素按关键字有序递增/递减。链表无法实现折半查找因为无法随机定位 mid【顺序表拥有随机访问的特性而链表没有】。默认升序设置 low 和 high 指针取中间位置 mid 比较。low查找区间左边界high查找区间右边界m i d ⌊ l o w h i g h 2 ⌋ mid\lfloor \dfrac{lowhigh}{2}\rfloormid⌊2lowhigh​⌋向下取整默认若相等则成功若 key 小于 arr[mid]则 high mid - 1去左半边若 key 大于 arr[mid]则 low mid 1去右半边;循环条件是 low high这是防止漏查最后一个元素;low high查找失败图示如下算法的实现typedefstruct{//查找表的数据结构顺序表ElemType*elem;//动态数组基址intTableLen;//表的长度}SSTable;//折半查找 升序intBinary_Search(SSTable L,ElemType key){intlow0,highL.TableLen-1,mid;while(lowhigh){mid(lowhigh)/2;//取中间位置if(L.elem[mid]key)returnmid;//查找成功则返回所在位置elseif(L.elem[mid]key)highmid-1;//从前半部分继续查找elselowmid1;//从后半部分继续查找}return-1;//查找失败返回-1}// 降序适用于从大到小排列的顺序表intBinary_Search_Desc(SSTable L,ElemType key){intlow0,highL.TableLen-1,mid;while(lowhigh){mid(lowhigh)/2;if(L.elem[mid]key){returnmid;}elseif(L.elem[mid]key){// 【核心区别】中间值 目标值highmid-1;// 目标在左半部分因为左边更大}else{// L.elem[mid] keylowmid1;// 目标在右半部分因为右边更小}}return-1;// 查找失败}查找效率分析查找成功内部结点统计判定树中每一层根为第 1 层的内部结点个数A S L 成功 1 × 第1层结点数 2 × 第2层结点数 . . . h × 第 h 层结点数 n ASL_{成功}\dfrac{1\times\text{第1层结点数}2\times\text{第2层结点数}...h\times\text{第}h\text{层结点数}}{n}ASL成功​n1×第1层结点数2×第2层结点数...h×第h层结点数​查找失败外部结点 / 空指针统计判定树中每个外部结点空指针所在的层数。外部结点的层数等于其父结点的层数 1。公式A S L 失败 ∑ ( 外部结点层数 ) 外部结点总数 ASL_{失败}\dfrac{\sum(\text{外部结点层数})}{\text{外部结点总数}}ASL失败​外部结点总数∑(外部结点层数)​根为第1层。折半查找判定树的构造向下取整向上取整折半查找的查找效率折半查找时间复杂度 O ( l o g 2 n ) O(log_2n)O(log2​n)顺序查找的时间复杂度 O ( n ) O(n)O(n)折半查找的速度 一定 比 顺序查找 更快不一定噢

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号