题6
题目
在一个顺序存储的有序线性表上查找一个数据时, 既可以采用折半查找, 也可以采用顺序查找,但前者比后者的查找速度 ( ).
A. 必然快
B. 取决于表是递增还是递减
C. 在大部分情况下要快
D. 必然不快
分析
二分肯定是一种高效的查找方式,但是在一些特殊情况下,比如 n 很小的时候,顺序查找可能会更快,所以不能说二分查找必然快。
解
C
折半查找的快,体现在一般情况下, 在大部分情况下要快, 但是对于某些特殊情况, 顺序查找可能会快于折半查找。
例如, 查找一个含 1000 个元素的有序表中的第一个元素时, 顺序查找的比较次数为 1 次, 而折半查找的比较次数却将近 10 次。