二分查找是一种在有序数组中查找特定元素的搜索算法,搜索过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较,如果在某一步骤数组为空,则代表找不到。
(图片来源网络,侵删)以下是Python实现二分查找的代码:
def binary_search(arr, low, high, x): if high >= low: mid = (high + low) // 2 if arr[mid] == x: return mid elif arr[mid] > x: return binary_search(arr, low, mid 1, x) else: return binary_search(arr, mid + 1, high, x) else: return 1
在这个函数中,我们首先找到中间元素,然后根据x和中间元素的大小关系来决定下一步在左半部分还是右半部分进行查找。
最新评论
本站CDN与莫名CDN同款、亚太CDN、速度还不错,值得推荐。
感谢推荐我们公司产品、有什么活动会第一时间公布!
我在用这类站群服务器、还可以. 用很多年了。