羽毛笔
二分搜索(Binary Search)是一种高效的有序数组查找算法,通过每次将搜索范围缩小一半来快速定位目标元素。其前提是数据必须是有序的。时间复杂度在最优情况下为 \(O(1)\),最坏/平均情况下为 \(O(\log n)\),空间复杂度为 \(O(1)\)。实现时需要三个主要参数:有序数组 `*nums`、数组长度 `numsSize` 以及目标值 `target`。二分搜索可通过递归或循环两种方式实现,其中递归方法代码更简洁但有栈溢出风险和较高的调用开销;而循环方法则避免了这些缺点,更适合实际应用。推荐使用循环实现以保证效率和可读性。