概述

AList 是一种基于动态数组(resizable array)实现的线性表。内部用一个数组存放元素,当数组装满时按一定策略扩容;这样既保留了数组的随机访问效率,又能动态增长容量以适应大小变化


不变量

最后一项的索引永远是 size -1
如果要删掉最后一项那么 size -1
列表大小永远是 size


改变 array 的大小(resizing)

通过数组复制的方法改变 array 大小的时候,可以用乘 n,而不是加 n,这样速度会显著变快

Pasted image 20260309212225