目录
线性表
全名为线性存储结构,线性表存储结构可细分为顺序存储结构和链式存储结构。将数据依次存储在连续的整块物理空间中,这种存储结构称为顺序存储结构(简称顺序表),数据分散的存储在物理空间中,通过一根线保存着它们之间的逻辑关系,这种存储结构称为链式存储结构(简称链表)
前驱和后继
在一组数据元素中,左位是该元素的前驱,右位是该元素的后继,相邻则是直接前驱或直接后继。
顺序表
向已有顺序表中插入数据元素,根据插入位置的不同,可分为以下 3 种情况:
- 插入到顺序表的表头;
- 在表的中间位置插入元素;
- 尾随顺序表中已有元素,作为顺序表中的最后一个元素;
虽然数据元素插入顺序表中的位置有所不同,但是都使用的是同一种方式去解决,即:通过遍历,找到数据元素要插入的位置,然后做如下两步工作:
- 将要插入位置元素以及后续的元素整体向后移动一个位置;
- 将元素放到腾出来的位置上;
初始化顺序表
typedef struct{
int *elem; //存储空间基址
int length; //当前长度
int listsize;