数据结构
2016-09
在有 n(n>1000)个元素的升序数组 A 中查找关键字 x。查找算法的伪代码如下所示。
k = 0;
while (k < n 且 A[k] < x)
k = k + 3;
if (k < n 且 A[k] == x)
查找成功;
else if (k - 1 < n 且 A[k - 1] == x)
查找成功;
else if (k - 2 < n 且 A[k - 2] == x)
查找成功;
else
查找失败;本算法与折半查找算法相比,有可能具有更少比较次数的情形是__。
A. 当 x 不在数组中
B. 当 x 接近数组开头处
C. 当 x 接近数组结尾处
D. 当 x 位于数组中间位置
答案
答案:B