线性表中的顺序表的9种基本运算的算法的程序实现
时间: 2024-09-18 10:12:27 浏览: 39
线性表中的顺序表是一种基于数组的数据结构,其基本操作通常包括插入、删除和查找等。这里给出九种基本运算的简单Python实现:
```python
class SequentialList:
def __init__(self):
self.data = []
# 插入元素到列表开头
def insert_at_start(self, item):
self.data.insert(0, item)
# 插入元素到列表末尾
def append(self, item):
self.data.append(item)
# 删除第一个匹配项
def remove_first(self):
if len(self.data) > 0:
return self.data.pop(0)
else:
raise IndexError("List is empty")
# 删除最后一个匹配项
def remove_last(self):
if len(self.data) > 0:
return self.data.pop()
else:
raise IndexError("List is empty")
# 查找指定元素的第一个实例
def search(self, target):
for i, value in enumerate(self.data):
if value == target:
return i
return -1
# 返回列表长度
def size(self):
return len(self.data)
# 清空列表
def clear(self):
del self.data[:]
# 获取指定索引处的元素
def get(self, index):
if index < len(self.data):
return self.data[index]
else:
raise IndexError("Index out of range")
# 将所有元素翻转
def reverse(self):
self.data.reverse()
# 检查列表是否为空
def is_empty(self):
return not bool(self.data)
# 示例和测试
list = SequentialList()
list.insert_at_start(1)
list.append(2)
print(list.search(2)) # 输出:1 (元素下标位置)
list.remove_first() # 删除第一个元素
list.clear() # 清空列表
```
阅读全文