python 线性表的顺序存储代码
时间: 2023-05-17 07:03:37 浏览: 60
下面是 Python 线性表的顺序存储代码:
class SeqList:
def __init__(self, maxsize=10):
self.maxsize = maxsize
self.array = [None] * self.maxsize
self.length = 0
def __len__(self):
return self.length
def __getitem__(self, index):
if index < 0 or index >= self.length:
raise IndexError("Index out of range")
return self.array[index]
def __setitem__(self, index, value):
if index < 0 or index >= self.length:
raise IndexError("Index out of range")
self.array[index] = value
def insert(self, index, value):
if self.length >= self.maxsize:
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.array[i] = self.array[i-1]
self.array[index] = value
self.length += 1
def delete(self, index):
if index < 0 or index >= self.length:
raise IndexError("Index out of range")
for i in range(index, self.length-1):
self.array[i] = self.array[i+1]
self.length -= 1
def __repr__(self):
return "[" + ", ".join(str(self.array[i]) for i in range(self.length)) + "]"
希望能对您有所帮助。