输入10个有序的整数关键字,利用折半查找法,查找用户输入的关键字。
时间: 2024-03-17 19:46:22 浏览: 61
PHP折半(二分)查找算法实例分析
好的,以下是利用折半查找法查找关键字的代码示例(使用Python语言实现):
```python
def binary_search(arr, left, right, key):
"""
折半查找法查找关键字
:param arr: 有序整数数组
:param left: 左边界
:param right: 右边界
:param key: 待查找的关键字
:return: 如果找到了,返回关键字在数组中的下标;否则返回-1
"""
while left <= right:
mid = (left + right) // 2
if arr[mid] == key:
return mid
elif arr[mid] > key:
right = mid - 1
else:
left = mid + 1
return -1
# 读取10个有序的整数关键字
arr = []
for i in range(10):
arr.append(int(input("请输入第%d个整数:" % (i+1))))
# 输入待查找的关键字
key = int(input("请输入待查找的关键字:"))
# 利用折半查找法查找关键字
result = binary_search(arr, 0, len(arr)-1, key)
# 输出结果
if result == -1:
print("未找到关键字")
else:
print("关键字在数组中的下标为:", result)
```
希望这个代码示例能够帮到你!
阅读全文