def _dichotomy_search2(key, a, lo, hi):
if hi < lo:
return -1
mid = (lo + hi) // 2
if a[mid] > key:
return self._dichotomy_search2(key, a, lo, mid)
elif a[mid] < key:
return self._dichotomy_search2(key, a, mid + 1, hi)
else:
return mid
def __dichotomy_search(key, a):
return self._dichotomy_search2(key, a, 0, len(a))
__dichotomy_search(10, [1, 9, 10, 36, 89, 101, 500, 1500])
python 递归实现二分法查找数值
最新推荐文章于 2022-11-25 21:27:54 发布