折半(二分)查找方法对查找表的要求是( )。

admin2013-02-02  23

问题 折半(二分)查找方法对查找表的要求是(  )。

选项 A、链表存储结构,元素有序排列
B、链表存储结构,元素无序排列
C、顺序存储结构,元素有序排列
D、顺序存储结构,元素无序排列

答案C

解析 二分查找也叫折半查找,其基本思想是:以处于中间位置元素的关键字和给定值比较,如果相等,则查找成功。如果给定值大于中间位置元素,则下一次在后半个子表进行二分查找。如果给定值小于中间位置元素,则下一次在前半个子表进行二分查找。这样通过逐步缩小范围,直到查找成功或子表为空时失败为止。显然,如果要查找的表是无序排列,则查找就没有意义。另外,查找需要能直接定位表中间位置的元素,即实现随即访问,因此只有顺序存储结构能满足此要求,在链表上只能顺序查找。【总结与扩展】二分查找在查找成功时和给定值进行比较的关键字格式至多为[log2n]+1。二分查找在查找不成功时和给定值进行比较的关键字格式最多也不会超过[log2n]+l。当查找的表元素值较大时,二分查找的平均查找长度为log2(n+1)-1。二分查找要求查找表进行顺序存储并且按照关键字有序排列,因此当对表进行元素插入或删除时,需要移动大量的元素。所以二分查找适用于表不易变动,且又经常进行查找的情况。
转载请注明原文地址:https://kaotiyun.com/show/HbVZ777K
0

最新回复(0)