折半查找,也称为二分查找,是一种针对已排序数组或列表的高效查找算法。该算法的核心思想是将目标元素与数组中间元素进行比较。

  • 如果目标元素等于中间元素,则返回中间元素的下标。
  • 如果目标元素小于中间元素,则在数组左半部分继续查找。
  • 如果目标元素大于中间元素,则在数组右半部分继续查找。

不断重复上述过程,直至找到目标元素或搜索范围为空。折半查找的时间复杂度为 O(log n),其中 n 代表数组长度。相较于线性查找和冒泡排序等算法,折半查找的效率更高。然而,折半查找算法的使用前提是数组必须有序,否则无法应用该算法。