线性表是由n个数据元素(结点)a1,a2,a3……an组成的有限序列。
线性表的数据元素ai所代表的具体含义随具体应用的不同而不同,在线性表的定义中,只不过是一个抽象的符号。
1.线性表的结点可以是单值元素(每个元素只有一个数据项)例如:26个英文字母表(A,B,C……Z)扑克的点数(2,3,4,5……J,Q,K)
2.线性表中的结点可以是记录型元素,每个元素含有多个数据项,每个项称为结点的一个域,每个元素有一个可以唯一标识每个结点的数据项组,称为关键字。
例子:某校2001级同学的基本情况{(‘201112’,‘张三’,‘男’,‘1983/2/4’),('201113','章华寺‘,’男‘1984/2/8)……}
顺序线性表:数组表示粗出线性表的元素,顺序表还需要长度的属性,所以用结构类型来定义顺序表类型。
typedef struct sqlist
{
ElemType Elem_array[MAX_SIZE];
int length;
}Sqlist;
链式线性表:为了正确表示节点间的逻辑关系,在存储每个结点值的同时,还必须存储指示其直接后继结点的地址(或位置),称为指针或链
链表是通过每个节点的指针域将线性表的n个节点按其逻辑次序链接在