全国计算机等级考试全真模拟试卷(2)12
发布网友
发布时间:2022-05-15 11:25
我来回答
共1个回答
热心网友
时间:2023-10-22 01:46
半搜索?没搞太明白,应该是二分查找吧……
要是二分查找的话,过程如下(大括号表示查找范围,方括号表示比较元素):
序列中有14个元素,(0+13)/2=6(注意是整除),先将关键码和和R[6]比较
{0 1 2 3 4 5 [6] 7 8 9 10 11 12 13}
关键码不等于R[6],折半查找,即将范围缩小到R[0],R[1],R[2],R[3],R[4],R[5]这6个元素中。(0+5)/2=2,再将关键码和和R[2]比较:
{0 1 [2] 3 4 5} 6 7 8 9 10 11 12 13
关键码不等于R[2],再折半,将范围缩小到R[3],R[4],R[5]。(3+5)/2=4,将关键码和R[4]比较:
0 1 2 {3 [4] 5} 6 7 8 9 10 11 12 13
不等,再折半,这时只剩R[3]了,找到……
应该选C