数值分析python二分法查找
时间: 2023-11-20 14:57:09 浏览: 109
数值分析之二分法、试值法 python
5星 · 资源好评率100%
以下是基于Python3的二分法查找的示例代码:
```python
def binary_search(nums, target):
left, right = 0, 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
```
该函数接受两个参数:一个已排序的列表和要查找的目标值。它使用while循环来不断缩小搜索范围,直到找到目标值或确定目标值不存在为止。如果找到目标值,则返回其索引;否则返回-1。
例如,假设我们有一个已排序的列表nums=[1, 3, 5, 7, 9],我们想要查找数字5的索引。我们可以这样调用函数:
```python
index = binary_search(nums, 5)
print(index) # 输出:2
```
阅读全文