在55个互异元素构成的有序表A[1..55]中进行折半查找(或二分查找,向下取整

最全题库2022-08-02  41

问题 在55个互异元素构成的有序表A[1..55]中进行折半查找(或二分查找,向下取整)。若需要找的元素等于A[19],则在查找过程中参与比较的元素依次为(  )、A[19]。A.A[28]、A[30]、A[15]、A[20]B.A[28]、A[14]、A[21]、A[17]C.A[28]、A[15]、A[22]、A[18]D.A[28]、A[18]、A[22]、A[20]

选项 A.A[28]、A[30]、A[15]、A[20]
B.A[28]、A[14]、A[21]、A[17]
C.A[28]、A[15]、A[22]、A[18]
D.A[28]、A[18]、A[22]、A[20]

答案 B

解析 折半查找时,下标计算过程为(注:key的值与A[19]相同):
1、mid=[(1+55)/2]=28,把A[28]与key的值比较后,缩小查找范围为:A[1]至A[27];
2、mid=[(1+27)/2]=14,把A[14]与key的值比较后,缩小查找范围为:A[15]至A[27];
3、mid=[(15+27)/2]=21,把A[21]与key的值比较后,缩小查找范围为:A[15]至A[20];
4、mid=[(15+20)/2]=17,把A[17]与key的值比较后,缩小查找范围为:A[18]至A[20];
5、mid=[(18+20)/2]=19,把A[19]与key的值比较后,发现值相等,找到目标。
转载请注明原文地址:https://tihaiku.com/congyezige/2410488.html

最新回复(0)