经典指数          
原因
1164
浏览数
0
收藏数
 

在序列 [22, 34, 55, 77, 89, 93, 99, 102, 120, 140] 中,采用二分查找,分别查找77,34,99,所需的查找次数分别为()
  • 3,3,3
  • 3,3,4
  • 3,4,3
  • 4,2,4

     举报   纠错  
 
切换
1 个答案
22 34 55 77 89 93 99 102 120 140 0   1    2   3  4    5   6     7    8     9 假设低下标用low表示,高下标用high表示。 查找77: 开始low = 0, high = 9 第一次查找,找到中心的下标为(0+9)/2 = 4,即89,由于89大于77,所以,调整low = 0,high = 3(注意:由于知道下标为4的元素比77大,所以不会让high等于4) 第二次查找,找到中心的下标为(0+3)/2 = 1,即34,由于34小于77,所以,调整low = 2,high = 3 第三次查找,找到中心的下标为(2+3)/2 = 2,即55,由于55小于77,所以,调整low = 3,high = 3 第四次查找,找到中心的下标为(3+3)/2 = 3,即77,找到所要找的元素 查找34和99的过程类似。。。
 
切换
撰写答案
扫描后移动端查看本题