4、定义一个函数Binary_Search,实现二分查找,输入参数为列表search_list与待查找的数target,如果找到则输出其索引,未找到输出None。
时间: 2024-10-08 09:15:01 浏览: 25
Binary_Search_Algorithm:执行迭代二进制搜索以查找整数在给定排序列表中的位置。 a_list-排序的整数列表item-要搜索其位置的整数
二分查找,也称为折半查找,是一种在有序数组中查找特定元素的搜索算法。它的基本思想是将数组分为两部分,然后比较中间元素与目标值的关系,以此不断缩小搜索范围。以下是Python中定义一个`Binary_Search`函数的示例:
```python
def Binary_Search(search_list, target):
low = 0 # 低索引
high = len(search_list) - 1 # 高索引
while low <= high:
mid = (low + high) // 2 # 计算中间索引
if search_list[mid] == target:
return mid # 找到目标,返回索引
elif search_list[mid] < target:
low = mid + 1 # 目标在右半部分,更新低索引
else:
high = mid - 1 # 目标在左半部分,更新高索引
return None # 如果遍历完整个数组都没有找到,返回None
# 示例:
numbers = [1, 3, 5, 7, 9]
print(Binary_Search(numbers, 5)) # 输出:2
print(Binary_Search(numbers, 6))
阅读全文