顺序表的建立查找与删除代码
时间: 2023-12-27 18:19:46 浏览: 35
顺序表的建立:
```python
class SeqList:
def __init__(self, maxsize=None):
self.maxsize = maxsize # 容量
self.items = [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.items[index]
def __setitem__(self, index, value):
if index < 0 or index >= self.length:
raise IndexError("Index out of range")
self.items[index] = value
def __repr__(self):
return f"{self.items}"
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 - 1, index - 1, -1):
self.items[i + 1] = self.items[i]
self.items[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.items[i] = self.items[i + 1]
self.length -= 1
```
顺序表的查找:
```python
def search(seq_list, value):
for i in range(len(seq_list)):
if seq_list[i] == value:
return i
return -1
```
顺序表的删除:
```python
def delete(seq_list, value):
index = search(seq_list, value)
if index == -1:
return False
seq_list.delete(index)
return True
```