以下是一个使用二分法查找元素的示例代码:\n\npython\ndef binary_search(arr, target):\n left = 0\n right = len(arr) - 1\n\n while left <= right:\n mid = (left + right) // 2\n\n if arr[mid] == target:\n return mid\n elif arr[mid] < target:\n left = mid + 1\n else:\n right = mid - 1\n\n return -1\n\n# 测试代码\narr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\ntarget = 6\nresult = binary_search(arr, target)\nif result != -1:\n print("元素在索引", result, "处")\nelse:\n print("元素不在数组中")\n\n\n这段代码实现了在一个已排序的数组中使用二分法查找目标元素。函数binary_search接受一个已排序的数组arr和目标元素target作为参数,返回目标元素在数组中的索引(如果存在)或者-1(如果不存在)。\n\n在代码中,我们使用了leftright两个指针来表示当前查找范围的左右边界,然后计算出中间元素的索引mid。在每一次循环中,我们将目标元素与中间元素进行比较,如果相等,则找到了目标元素,返回其索引。如果目标元素大于中间元素,则将左边界移动到mid + 1处,继续在右半部分查找;如果目标元素小于中间元素,则将右边界移动到mid - 1处,继续在左半部分查找。重复这个过程,直到找到目标元素或者左边界大于右边界为止。如果循环结束时还没有找到目标元素,则返回-1。\n\n在测试代码中,我们创建了一个已排序的数组arr,然后调用binary_search函数来查找目标元素target。如果返回的结果不等于-1,则说明找到了目标元素,打印其索引;否则,说明目标元素不存在于数组中。

二分查找算法代码示例 - Python 实现

原文地址: https://www.cveoy.top/t/topic/puyp 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录