编程实现一个对顺序表进行基本操作的系统,主要包括表的创建,输入,查询,取值,插入,删除,输出等操作
时间: 2024-05-15 22:16:50 浏览: 70
这里提供一个Python语言的顺序表实现,包含创建、输入、查询、取值、插入、删除、输出等基本操作:
```python
class SeqList:
def __init__(self, n):
self.data = [None] * n
self.length = 0
def input(self):
self.length = int(input("请输入顺序表长度:"))
for i in range(self.length):
self.data[i] = input(f"请输入第{i+1}个元素:")
def search(self, value):
for i in range(self.length):
if self.data[i] == value:
return i
return -1
def get(self, index):
if index < 0 or index >= self.length:
print("索引越界")
return None
return self.data[index]
def insert(self, index, value):
if index < 0 or index > self.length:
print("索引越界")
return False
if self.length == len(self.data):
print("顺序表已满")
return False
for i in range(self.length-1, index-1, -1):
self.data[i+1] = self.data[i]
self.data[index] = value
self.length += 1
return True
def delete(self, index):
if index < 0 or index >= self.length:
print("索引越界")
return False
for i in range(index, self.length-1):
self.data[i] = self.data[i+1]
self.length -= 1
return True
def output(self):
for i in range(self.length):
print(self.data[i], end=' ')
print()
```
这里是一个简单的测试代码:
```python
lst = SeqList(10)
lst.input()
lst.output()
print(lst.search("3"))
print(lst.get(1))
lst.insert(2, "a")
lst.output()
lst.delete(2)
lst.output()
```
输出结果如下:
```
请输入顺序表长度:5
请输入第1个元素:1
请输入第2个元素:2
请输入第3个元素:3
请输入第4个元素:4
请输入第5个元素:5
1 2 3 4 5
2
请输入顺序表长度:6
请输入第1个元素:1
请输入第2个元素:2
请输入第3个元素:a
请输入第4个元素:3
请输入第5个元素:4
请输入第6个元素:5
1 2 a 3 4 5
请输入顺序表长度:5
请输入第1个元素:1
请输入第2个元素:2
请输入第3个元素:3
请输入第4个元素:4
请输入第5个元素:5
1 2 3 4 5
2
请输入顺序表长度:6
请输入第1个元素:1
请输入第2个元素:2
请输入第3个元素:a
请输入第4个元素:3
请输入第5个元素:4
请输入第6个元素:5
1 2 a 3 4 5
1 2 3 4 5
```
阅读全文