1. 确定数组中间位置的索引,即 mid = (0 + 12) / 2 = 6,对应元素为 42。
  2. 将目标值 55(假设要查找的值为55)与中间元素 42 进行比较,发现目标值较大,说明目标值在右半部分。
  3. 在右半部分[55,70,74,81,85,93,98]中进行折半查找,重复步骤1和步骤2,得到mid=3,对应元素为 81。
  4. 将目标值 55 与中间元素 81 进行比较,发现目标值较小,说明目标值在左半部分。
  5. 在左半部分[3,14,27,31,39]中进行折半查找,重复步骤1和步骤2,得到mid=2,对应元素为 27。
  6. 将目标值 55 与中间元素 27 进行比较,发现目标值较大,说明目标值在右半部分。
  7. 在右半部分[31,39]中进行折半查找,重复步骤1和步骤2,得到mid=1,对应元素为 39。
  8. 将目标值 55 与中间元素 39 进行比较,发现目标值较大,说明目标值在右半部分。
  9. 在右半部分中[55,70,74,81,85]进行折半查找,重复步骤1和步骤2,得到mid=3,对应元素为 81。
  10. 将目标值 55 与中间元素 81 进行比较,发现目标值较小,说明目标值在左半部分。
  11. 在左半部分[55,70,74]中进行折半查找,重复步骤1和步骤2,得到mid=1,对应元素为 70。
  12. 将目标值 55 与中间元素 70 进行比较,发现目标值较小,说明目标值在左半部分。
  13. 在左半部分[55]中进行折半查找,重复步骤1和步骤2,得到mid=0,对应元素为 55。
  14. 找到目标值 55,返回其索引位置
对有序数组3142731394255707481859398给出对其进行折半
查找的具体过程不要代码

原文地址: https://www.cveoy.top/t/topic/hffV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录