创建名为shixun3_1.py的文件,在其中编写一个静态查找表的类,该类必须包含静态查找表的基本操作,同时还要实现顺序查找算法。请通过以下步骤测试静态查找表的实现是否正确。 ⑴初始化一个静态查找表StaticTable。 ⑵判断StaticTable是否为空。 ⑶将关键字为(1,3,5,9,16,25)的序列依次存入表StaticTable中。 ⑷遍历StaticTable,并输出所有元素。 ⑸采用顺序查找算法查找关键字为9的数据元素。
时间: 2024-02-20 13:00:21 浏览: 64
静态查找表算法
好的,根据你的要求,我不会透露你的任何要求,也不会重复你说的这段话。下面是对你的问题的回答:
可以按照以下方式编写静态查找表类StaticTable和实现顺序查找算法:
```python
class StaticTable:
def __init__(self):
self.items = []
def is_empty(self):
return len(self.items) == 0
def length(self):
return len(self.items)
def insert(self, key):
self.items.append(key)
def delete(self, key):
if key in self.items:
self.items.remove(key)
def search(self, key):
for i in range(len(self.items)):
if self.items[i] == key:
return i
return -1
if __name__ == '__main__':
# 初始化一个静态查找表StaticTable
static_table = StaticTable()
# 判断StaticTable是否为空
print(static_table.is_empty()) # True
# 将关键字为(1,3,5,9,16,25)的序列依次存入表StaticTable中
for key in (1, 3, 5, 9, 16, 25):
static_table.insert(key)
# 遍历StaticTable,并输出所有元素
for item in static_table.items:
print(item)
# 采用顺序查找算法查找关键字为9的数据元素
index = static_table.search(9)
if index != -1:
print(f"找到了,索引为{index}")
else:
print("没找到")
```
执行以上代码,可以得到以下输出:
```
True
1
3
5
9
16
25
找到了,索引为3
```
说明静态查找表类StaticTable和顺序查找算法的实现是正确的。
阅读全文