顺序表 | 链表 | |
---|---|---|
存储空间 | 预先分配,会导致空间闲置或溢出现象 | 动态分配,不会出现存储空间闲置或溢出现象 |
存储密度 | 不用为表示结点间逻辑关系二增加额外的存储开销,存储密度等于1 | 需要借助指针来实现原宿间的逻辑关系,存储密度等于1 |
存取元素 | 随机存取,按位置访问元素的 ,T(n)=O(1) | 顺序存储,按位置访问元素,T(n)=O(n) |
插入元素 | 平均移动约表长的一半,T(n)=O(n) | 不需要一定元素,确定插入删除位置后,T(n)=O(1) |
适用情况 | 1.表长变化大,且能事先确定变化的范围;2.很少迎新插入或删除操作 | 1.长度变化大;2.频繁进行插入或删除操作 |