设计一个顺序表,存储26个英文元素的大写字母表:(A,B,C,D…),完成线性表的初始化创建、按内容查询、插入、删除、输出表中信息五个操作。
时间: 2024-09-12 12:11:08 浏览: 83
计算机软件基础:第2章 线性数据结构 - 2链表.ppt
顺序表是一种线性表的存储结构,它使用一段连续的存储单元一次存储线性表的数据元素。顺序表可以随机地存取表中的任一元素,但插入和删除操作需要移动大量的元素以保持数据的连续性。
以下是使用Python语言实现一个顺序表的基本操作的示例代码:
```python
class SequentialList:
def __init__(self, size=26):
# 初始化创建顺序表,默认存储26个英文大写字母
self.data = [chr(i) for i in range(65, 65 + size)]
def search(self, element):
# 按内容查询元素在顺序表中的位置
for i, e in enumerate(self.data):
if e == element:
return i
return -1
def insert(self, element, position):
# 在指定位置插入元素
if position < 0 or position > len(self.data):
print("位置不合法")
return False
self.data.insert(position, element)
return True
def delete(self, position):
# 删除指定位置的元素
if position < 0 or position >= len(self.data):
print("位置不合法")
return False
self.data.pop(position)
return True
def display(self):
# 输出表中的信息
for e in self.data:
print(e, end=' ')
print()
# 实例化顺序表并进行操作
seq_list = SequentialList()
# 输出初始化创建的顺序表信息
print("初始化顺序表:")
seq_list.display()
# 插入操作
seq_list.insert('X', 20)
print("插入元素后的顺序表:")
seq_list.display()
# 删除操作
seq_list.delete(19)
print("删除元素后的顺序表:")
seq_list.display()
# 按内容查询操作
index = seq_list.search('X')
if index != -1:
print(f"元素 'X' 在顺序表中的位置是: {index}")
else:
print("未找到元素 'X'")
# 输出表中信息操作
print("最终顺序表中的信息:")
seq_list.display()
```
在上述代码中,我们定义了一个`SequentialList`类,它包含了顺序表的基本操作:初始化创建、按内容查询、插入、删除和输出表中信息。通过这个类的实例,我们可以模拟对顺序表的各种操作。
阅读全文