折半查找(二分查找)

  1. 折半查找的主要步骤

       置初始查找范围:low=1,high=n(设置初始区间)查找范围中间项:mid=(low+high)/2(取中间点位置,当时low+high和为奇数时,mid向下取整,如2.5取2)将指定的关键字k与中间项的关键字进行比较若相等,查找成功,找到数据元素此时mid指向的位置若k小于中间项关键字,查找范围的低端数据元素low不变,高端数据元素指针high更新为mid-1若k小于中间项关键字,查找范围的低端数据元素high不变,高端数据元素指针low更新为mid+1重复以上步骤直到查找成功或查找范围为空(low>high,查找失败)
    
  2. 看了折半查找的步骤来看下面的例子

           在下列表长为8中查找:159 12 15 18 20 25 30 381. 此时low=1,high=8mid=(low+high)/2=4     (向下取整)将15与mid指针指向的元素18比较(15<18),此时令high=mid-1=32. 此时low=1,high=3mid=(low+high)/2=2将15与mid指针指向的元素18比较(15>12),此时令low=mid+1=33. 此时low=3,high=3mid=(low+high)/2=3将15与mid指针指向的元素15比较(15==15),查找成功,返回当前项的指针,此时返回3
    

本人一点小小的见解,如有错误请斧正,如果可以请点赞支持一下,谢谢!

折半查找表中的偶数问题相关推荐

  1. opencv cv2.LUT()(使用查找表中的值填充输出数组)

    from cv2.__init__.py def LUT(src, lut, dst=None): # real signature unknown; restored from __doc__&qu ...

  2. mysql查找表中员工姓名性别_SQL 常见面试题解析

    内容简介 本文介绍并分析了 100 道常见 SQL 面试题,主要分为三个模块:SQL 初级查询.SQL 高级查询以及数据库设计与开发.文章内容结构如下图所示: 本文主要使用三个示例表:员工表(empl ...

  3. 如何利用sql查找表中的重复数据?

    编写一个SQL查询,查找学生表中所有重复的学生名: 分析思路 1.看到"找重复"的关键字眼,首先要用分组函数(group by),再用聚合函数中的计数函数count()给姓名列计数 ...

  4. Lua - 查找表中是否存在某一key值或value值

    代码如下: -- 查看某值是否为表tbl中的key值 function table.kIn(tbl, key)if tbl == nil thenreturn falseendfor k, v in ...

  5. 利用SQL查找表中的质数(prime number)和完全数(perfect number)以及几个有趣的SQL语句...

    之前在某次interview中被老外问到如何用SQL找出列上的质数和完全数的问题:我当时已经多年没有写过这种考算法和SQL技巧(纯粹的技巧)的语句了,乍遇此问题倒是有些棘手.现在录以记之,供人参考. ...

  6. #MySQL#查找表中重复条目、删除重复条目

    -- 查找重复条目 SELECT ID,COUNT(ID) FROM IDrecord GROUP BY ID HAVING COUNT(ID) > 1-- 删除重复条目 DELETE FROM ...

  7. day1:如何利用SQL查找表中数据类型

    一起积累本地数据库各种小代码吧~ 1. 查看表的数据类型 无论是MySQL还是PostgreSQL,本地数据库均可使用以下代码查看数据库中每张表的数据类型. select column_name,da ...

  8. sqlite 查找表中多余的重复记录

    在清理数据库的时候遇到问题,参照了其他网友的方法,最终以下语句清理成功,下面说点自己的理解. 需要删除数据库里大量重复的数据,使用以下语句.其中word3是表名,最关键的一个点是那个特殊的字段:row ...

  9. Java有序表查找:折半查找、二分查找、差值查找和斐波那契查找

    Java有序表查找:折半查找.二分查找.差值查找和斐波那契查找     [尊重原创,转载请注明出处]http://blog.csdn.net/guyuealian/article/details/51 ...

最新文章

  1. TVM 高效保护隐私 ML
  2. 德鲁克的黄金管理20条—------中高层管理必修课
  3. 08、MySQL—字符串型
  4. QPS、TPS、PV、UV、GMV、IP、RPS知识点解释
  5. [云炬创业基础笔记]第二章创业者测试19
  6. POJ3130(还是判断多边形的内核是否存在)
  7. 专访腾讯多媒体实验室商世东:咬咬牙也要跟上新版本的发布
  8. 复杂性思维中文第二版 附录 A、算法分析
  9. VSAN见证虚拟设备
  10. 转--linux开启FrameBuffer
  11. UVA13029 Emoticons【文本处理】
  12. 小米路由器的linux命令,小米路由器pro安装mt工具箱
  13. java ee课程设计_javaee课程设计
  14. 【模电】0007 有源滤波器2(二阶有源滤低通波器)
  15. 编程技巧│使用 python 操作手机 app 超详细步骤
  16. Matlab学习报告 20-12-08
  17. 基于单片机的自行车码表设计
  18. catia三边倒角_CATIA倒圆角为什么圆角会被吃掉?
  19. 第2章 Spring Boot实践,开发社区登录模块(上)
  20. 景观智慧路灯:基于景观智慧灯杆的浙江嘉兴智慧旅游景区项目分享

热门文章

  1. DNS域名解析负载均衡
  2. 梦想Android版CAD控件2018.7.26更新
  3. 新零售的无人货架是怎么失败的?
  4. 2022-2028中国静脉穿刺针市场现状研究分析与发展前景预测报告
  5. 如何打造一个创业团队
  6. 金山桌面软件测试实习生笔试面试
  7. C#重要知识点在游戏开发中的应用
  8. 计算机主板的天敌,“选择困难症”克星 Rolling让你不再纠结
  9. android intent 打开 百度 地图 导航 api,关于openApp打开高德和百度地图导航
  10. 怎么在CAD图中插入Excel表格