请编写一个线性表验证程序,该程序应支持以下功能:使用数组实现数据结构,包含初始化、获取元素值、搜索元素、插入新元素以及删除元素。数组的第一个元素用于存储线性表的实际长度。请确保所有操作都能正确执行并返回预期结果。
时间: 2024-12-24 15:42:09 浏览: 9
为了实现这个简单的线性表验证程序,我们可以使用Python语言编写。这里是一个基础的实现:
```python
class LinearList:
def __init__(self):
self.data = [0] # 使用数组表示线性表,第一个元素存储实际长度
# 初始化函数
def initialize(self, size=0):
if size > 0:
self.data[0] = size
for i in range(1, size + 1):
self.data.append(None)
# 获取元素值
def get_element(self, index):
if index < 0 or index >= self.data[0]:
return "Index out of bounds"
else:
return self.data[index + 1]
# 搜索元素
def search_element(self, value):
for i in range(self.data[0]):
if self.data[i + 1] == value:
return i
return -1 # 如果找不到,返回-1
# 插入新元素
def insert_element(self, index, value):
if index < 0 or index > self.data[0]:
return "Invalid index"
else:
self.data.insert(index + 1, value)
self.data[0] += 1
# 删除元素
def delete_element(self, index):
if index < 0 or index >= self.data[0]:
return "Invalid index"
else:
del self.data[index + 1]
if index < self.data[0]:
self.data[0] -= 1
else: # 删除最后一个元素,需要更新长度
self.data.pop(0)
# 示例用法
ll = LinearList()
ll.initialize(5)
print(ll.get_element(2)) # 输出:None (假设初始为空)
ll.insert_element(1, 42)
print(ll.search_element(42)) # 输出:1
ll.delete_element(2)
print(ll.get_element(2)) # 输出:None after deleting 42 at index 2
阅读全文