顺序表就是 1,24,21,75,3,0,35
这种按顺序存储的
创建一个顺序表时会在内存中申请一块连续的内存
所以顺序表逻辑上相邻的两个元素在物理位置上也相邻(这也导致插入/删除需要移动大量元素)
数组下标 | 顺序表 | 内存地址 |
---|---|---|
0 | a1 | LOC(A) |
1 | a2 | LOC(A)+sizeof(ElemType) |
... | ||
i - 1 | ai | LOC(A)+(i-1)*sizeof(ElemType) |
... | ||
n - 1 | an | LOC(A)+(n-1)*sizeof(ElemType) |
... | ||
MaxSize - 1 | ... | LOC(A)+(MaxSize-1)*sizeof(ElemType) |
顺序表最主要的特点是随机访问,即通过首地址和元素序号可以在时间O(1)内找到指定元素
顺序表的存储密度高,每个节点只存数据元素(与链表区别)