线性表的基本操作并写一段代码
时间: 2024-03-19 14:46:09 浏览: 21
以下是线性表的基本操作的简单实现代码,以顺序表为例:
```python
class SeqList:
def __init__(self, maxsize):
self.maxsize = maxsize
self.items = [None] * self.maxsize
self.length = 0
def is_empty(self):
return self.length == 0
def is_full(self):
return self.length == self.maxsize
def insert(self, index, value):
if self.is_full():
raise Exception("SeqList is full")
if index < 0 or index > self.length:
raise IndexError("index out of range")
for i in range(self.length, index, -1):
self.items[i] = self.items[i - 1]
self.items[index] = value
self.length += 1
def delete(self, index):
if self.is_empty():
raise Exception("SeqList is empty")
if index < 0 or index >= self.length:
raise IndexError("index out of range")
value = self.items[index]
for i in range(index, self.length - 1):
self.items[i] = self.items[i + 1]
self.items[self.length - 1] = None
self.length -= 1
return value
def find(self, index):
if self.is_empty():
raise Exception("SeqList is empty")
if index < 0 or index >= self.length:
raise IndexError("index out of range")
return self.items[index]
def update(self, index, value):
if self.is_empty():
raise Exception("SeqList is empty")
if index < 0 or index >= self.length:
raise IndexError("index out of range")
self.items[index] = value
def traversal(self):
for i in range(self.length):
print(self.items[i])
def length(self):
return self.length
```
这段代码实现了线性表的基本操作,包括初始化、判断是否为空、是否已满、插入、删除、查找、修改、遍历和求长度。在实际应用中,可以根据需要对这些基本操作进行适当的修改和扩展。