class SqList: def __init__(self): # 构造函数 self.initcapacity = 5 # 初始容量设置为5 self.capacity = self.initcapacity # 容量设置为初始容量 self.data = [None] * self.capacity # 设置顺序表的空间 self.size = 0 # 长度设置为0 def resize(self, newcapacity): # 改变顺序表的容量为newcapacity assert newcapacity >= 0 # 检测参数正确性的断言 olddata = self.data self.data = [None] * newcapacity self.capacity = newcapacity for i in range(self.size): self.data[i] = olddata[i] def CreateList(self, a): # 由数组a中元素整体建立顺序表 def Add(self, e): # 在线性表的末尾添加一个元素e def getsize(self): # 返回长度 return self.size
时间: 2024-01-21 22:02:26 浏览: 88
在上述代码中,由于 `CreateList`、`Add` 方法以及 `getsize` 方法都没有代码实现,因此无法直接使用这个类。您需要在这些方法中添加代码实现,才能够使用这个类进行操作。
下面是对这些方法进行补全的代码:
```python
class SqList:
def __init__(self):
self.initcapacity = 5
self.capacity = self.initcapacity
self.data = [None] * self.capacity
self.size = 0
def resize(self, newcapacity):
assert newcapacity >= 0
olddata = self.data
self.data = [None] * newcapacity
self.capacity = newcapacity
for i in range(self.size):
self.data[i] = olddata[i]
def CreateList(self, a):
for i in range(len(a)):
self.Add(a[i])
def Add(self, e):
if self.size == self.capacity:
self.resize(2 * self.capacity)
self.data[self.size] = e
self.size += 1
def getsize(self):
return self.size
```
其中,`CreateList` 方法按顺序将数组 `a` 中的元素添加到顺序表中;`Add` 方法在顺序表的末尾添加一个元素 `e`;`getsize` 方法返回顺序表的长度。
阅读全文