一、线性表
一般表现为数组,使用一组地址连续的存储单元依次存储数据元素,如图:
它具有如下特点:
- 长度固定,必须在分配内存之前确定数组的长度。
- 存储空间连续,即允许元素的随机访问。
- 存储密度大,内存中存储的全部是数据元素。
- 要访问特定元素,可以使用索引访问,时间复杂度为 。
- 要想在顺序表中插入或删除一个元素,都涉及到之后所有元素的移动,因此时间复杂度为O(n) 。
代码示例:
seqlist.c
二、静态链表
三、动态链表
四、双向链表
五、循环链表
一、线性表
一般表现为数组,使用一组地址连续的存储单元依次存储数据元素,如图:
它具有如下特点:
代码示例:
seqlist.c
二、静态链表
三、动态链表
四、双向链表
五、循环链表