对关键字序列{0,2,4,8,16,32,64,128}进行二分查找,则第一个被查找到的关键字是()
A、
0
B、
8
C、
16
D、
128
【正确答案】:B
【题目解析】:
二分查找(Binary Search)的查找过程为每次用给定值与处在表的中间位置的数据元素的键值进行比较,确定给定值的所在区间,然后逐步缩小查找区间。重复以上过程直至找到或确认找不到该数据元素为止。
首先,置查找区间初值是[0,128],给每个元素一个位置下标,即查找区间初值的位置是[0,7],取中间位置是(0+7)/2=3,即元素8,与给定值比较。