Python自定义列表:PyList的实现与应用
1. PyList数据类型
在Python编程中,我们可以自定义一个列表数据结构——PyList。为了支持 append 操作的 $O(1)$ 复杂度,PyList包含了一些空位置,这些位置在调用 append 方法时会被填充。
PyList对象需要记录三个信息:
- items :实际存储元素的列表。
- size :内部列表的大小。
- numItems :内部列表当前正在使用的位置数量。
虽然可以通过 len 函数获取列表大小,但为了避免在代码中多次调用 len 带来的开销,我们将 size 存储在对象中。
内部列表中所有已使用的位置都在列表开头,即列表中间不会有“空洞”,这是我们数据结构的一个不变性。这个不变性意味着我们可以在 $O(1)$ 时间内随机访问列表元素,因为不需要搜索元素的正确位置,对PyList进行索引操作只需索引内部的 items 列表即可。
2. PyList构造函数
以下是PyList构造函数的代码:
class PyList:
def __init__(self,contents=[], size=10):
# The contents a
超级会员免费看
订阅专栏 解锁全文
2527

被折叠的 条评论
为什么被折叠?



