查找——顺序查找 vs 折半查找

本文探讨了两种常见的线性查找方法:顺序查找和折半查找。顺序查找通过逐个比较关键字来寻找目标,而折半查找则需要有序列表,通过不断将搜索范围减半来提高效率。在有序表中,折半查找通常比顺序查找更快找到目标元素。
摘要由CSDN通过智能技术生成

基于线性结构的查找主要就是顺序查找和折半查找

1. 顺序查找

特点是用所给的关键字与线性表中各元素的关键字逐个进行比较,直到成功或失败。

基本思想是:在查找表的一端设置一个称为“监视哨”的附加单元,存放要查找的数据元素关键字。然后从表的另一端开始查找,如果在“监视哨”位置找到给定关键字,则失败,否则成功返回相应元素的位置


2.折半查找

又称二分查找
这种查找方法需要待查表满足两个条件:

  • 首先,查找表必须使用顺序的存储结构。
  • 其次,查找表必须按关键字大小有序排列。

基本思想是:
首先,将查找表中间位置数据元素的关键字与给定关键字比较,如果相等则查找成功;

——> 否则利用中间元素将表一分为二,如果中间元素关键字大于给定关键字,则在前一子表中进行折半查找;

——> 否则在后一子表中进行折半查找。

——> 重复以上过程,知道找到满足条件的元素,则查找成功;或知道子表为空为止,此时查找不成功。

例 8-1 已知如下11个数据元素的有序表,在有序表中查找关键字27和28。
(5,13,17,27,36,41,46,50,75,88,92)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值