AI文库-您身边的智能助手,如没有想要的内容请与本站万能的AI助手联系。

写一串代码、实验基本要求 完成查找的算法实现(顺序查找、折半查找等操作),并完成测试与运行。 四、实验内容 实验内容:实现顺序查找与折半查找的程序设计。 实验步骤: 实验步骤: 1.建立查找表; (具

来自 辽宁省铁岭市 的网友 时间: 热度:°C 加入收藏 我要投稿 点赞()
一、实验目的

1. 掌握顺序查找和折半查找的基本原理和实现方法。
2. 学会使用Python实现查找算法。

二、实验内容

实现顺序查找与折半查找的程序设计。

三、实验步骤

1. 建立查找表

```python
def create_lookup_table(data):
lookup_table = {}
for item in data:
lookup_table[item] = item
return lookup_table
```

2. 输出查找表

```python
def print_lookup_table(lookup_table):
for key, value in lookup_table.items():
print(f"{key} -> {value}")
```

3. 顺序查找算法

```python
def sequential_search(lookup_table, target):
for key, value in lookup_table.items():
if key == target:
return key
return None
```

4. 折半查找算法

```python
def binary_search(lookup_table, target):
low, high = 0, len(lookup_table) - 1
while low <= high:
mid = (low + high) // 2
if lookup_table[mid] == target:
return mid
elif lookup_table[mid] < target:
low = mid + 1
else:
high = mid - 1
return None
```

5. 主函数

```python
def main():
data = [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
lookup_table = create_lookup_table(data)
print("查找表:")
print_lookup_table(lookup_table)

target = 11
print(f"目标值 {target} 在查找表中的位置:", sequential_search(lookup_table, target))
print(f"目标值 {target} 在查找表中的位置(折半查找):", binary_search(lookup_table, target))

if __name__ == "__main__":
main()
```

6. 测试与运行

将以上代码保存为一个Python文件,例如`search_algorithms.py`,然后在命令行中运行`python search_algorithms.py`,查看输出结果。
221381
领取福利

微信扫码领取福利

微信扫码分享