1. 顺序表的实践 1)建立5个元素的顺序表,如s=sqlist=(1,2,3,4,5),实现顺序表建立的基本操作。 2)在sqlist ,=(1,2,3,4,5)的元素4和5之间插入一个元素9,实现顺序表插入的基本操作。 3)在sqlist []=(1,2,3,4,9,5)中删除指定位置(i=5)上的元素9,实现顺序表的删除的基本操作。 4)输出顺序表中的所有元素。 5)查找顺序表中指定元素。
时间: 2023-05-30 12:04:46 浏览: 53
1) 建立5个元素的顺序表,如s=sqlist=(1,2,3,4,5),实现顺序表建立的基本操作。
```python
class SqList:
def __init__(self, maxsize=10):
self.maxsize = maxsize
self.list = [None] * maxsize
self.length = 0
def __len__(self):
return self.length
def __getitem__(self, index):
if index < self.length:
return self.list[index]
else:
raise IndexError('Index out of range.')
def __setitem__(self, index, value):
if index < self.length:
self.list[index] = value
else:
raise IndexError('Index out of range.')
def insert(self, index, value):
if self.length >= self.maxsize:
raise Exception('List 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.list[i+1] = self.list[i]
self.list[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.list[i] = self.list[i+1]
self.length -= 1
def print_all(self):
for i in range(self.length):
print(self.list[i])
sqlist = SqList(10)
sqlist.insert(0, 1)
sqlist.insert(1, 2)
sqlist.insert(2, 3)
sqlist.insert(3, 4)
sqlist.insert(4, 5)
```
2) 在sqlist,=(1,2,3,4,5)的元素4和5之间插入一个元素9,实现顺序表插入的基本操作。
```python
sqlist.insert(4, 9)
```
3) 在sqlist []=(1,2,3,4,9,5)中删除指定位置(i=5)上的元素9,实现顺序表的删除的基本操作。
```python
sqlist.delete(4)
```
4) 输出顺序表中的所有元素。
```python
sqlist.print_all()
```
5) 查找顺序表中指定元素。
```python
def find_element(sqlist, element):
for i in range(sqlist.length):
if sqlist[i] == element:
return i
return -1
find_element(sqlist, 3)
```