线性表的简单应用
线性表 •线性表是我们最先接触,也是最简单的一种数据结构的表现方式。 •线性表分为顺序表和链表,也就是顺序存储结构和链式存储结构的两种表现形式。 1.顺序表 •顺序表是在计算机内存中以数组的形式保存的线性表,线性表的顺序存储是指用一组地址连续的存储单元依次存储线性表中的各个元素、使得线性表中在逻辑结构上相邻的数据元素存储在相邻的物理存储单元中,即通过数据元素物理存储的相邻关系来反映数据元素之间逻辑上的相邻关系,采用顺序存储结构的线性表通常称为顺序表。顺序表是将表中的结点依次存放在计算机内存中一组地址连续的存储单元中。 1.定义顺序表结构体: #define MAXN 100100typedef struct list { int data[MAXN]; //存储空间 int last; //当前最后一个元素的下标(last+1表示当前表的长度) int maxsize; //最大元素个数(表的最大长度) }squenlist; 2.初始化结构体 void init(squenlist *L,int maxsize) { L->last = -1; //将last赋值为-1为了方便访问数组下标 L->maxsize = maxsize; //获取表的最大长度 } 3.建表 定义了结构体并且初始化了之后,就要开始建表了,建立顺序表的过程可以简化为一个给数组赋值的过程 int