|
发表于 2023-12-9 01:11:35
|
显示全部楼层
是的,二分搜索是一种高效的搜索算法,可以在已排序的列表中快速找到目标元素。以下是一个简单的二分搜索算法示例:
- def binary_search(nums, target):
- left = 0
- right = len(nums) - 1
-
- while left <= right:
- mid = (left + right) // 2
-
- if nums[mid] == target:
- return mid
- elif nums[mid] < target:
- left = mid + 1
- else:
- right = mid - 1
-
- return -1
- # 示例使用
- nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
- target = 5
- result = binary_search(nums, target)
- if result != -1:
- print("目标元素在索引", result)
- else:
- print("目标元素不在列表中")
复制代码
这个二分搜索算法通过将待搜索区域缩小一半来迭代地查找目标元素。它适用于已排序的列表,并且具有 O(log n) 的时间复杂度,比线性搜索快得多。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|