写一个数据结构线性表程序,要求1. 创建空顺序表; 2. 在顺序表上通过插入1~9建立非空顺序表并输出; 3. 取第6个数并输出; 4. 在已有顺序表里查找5,并输出查找结果; 5. 删除顺序表里的第4个数并输出删除后的顺序表。
时间: 2024-09-21 07:04:01 浏览: 41
首先,让我们编写一个简单的数据结构`SequentialList`来代表顺序表,它包含一个数组来存储元素,以及一些基本的操作方法。
```python
class SequentialList:
def __init__(self):
self.data = []
# 创建空顺序表
def create_empty(self):
print("创建空顺序表:")
self.data = []
# 插入元素
def insert(self, index, value):
if index < len(self.data) + 1:
self.data.insert(index, value)
print(f"插入{value}到位置{index}, 序列变为:", self.data)
else:
print("插入位置超出范围!")
# 输出第n个数
def get_element(self, n):
if 0 <= n < len(self.data):
print(f"第{n+1}个数是 {self.data[n]}")
else:
print("索引超出范围!")
# 查找元素
def find(self, value):
for i, num in enumerate(self.data):
if num == value:
print(f"{value}在序列中的位置是 {i}")
return True
print(f"{value}不在序列中.")
return False
# 删除元素
def delete(self, index):
if index < len(self.data):
del self.data[index]
print(f"删除第{index+1}个数后, 序列变为:", self.data)
else:
print("删除位置超出范围!")
# 实例化并操作顺序表
seq_list = SequentialList()
seq_list.create_empty()
# 插入1-9
for i in range(1, 10):
seq_list.insert(i, i)
# 获取第6个数
seq_list.get_element(5)
# 查找数字5
seq_list.find(5)
# 删除第4个数
seq_list.delete(3)
# 显示删除后的顺序表
print("\n删除操作后完整的顺序表:", seq_list.data)
```
阅读全文