
1. binary search
FUNCTION binary_search1(arr[], low, high, x):
WHILE low <= high: # 持续搜索直到搜索区间无效
mid = (low + high) >> 1 # 位运算计算中间索引 (等价于/2但更快)
IF arr[mid] == x: # 找到目标元素
PRINT "Found at index " + mid
RETURE
ELSE IF arr[mid] < x: # 目标在右半区
low = mid + 1 # 调整左边界
ELSE: # 目标在左半区
high = mid - 1 # 调整右边界
END WHILE
PRINT "Element not found" # 搜索空间耗尽未找到
RETURE
# 时间复杂度 O(log n),空间复杂度 O(1)
原创4/29/25大约 6 分钟