标签:变量 信息 alt strong math 随机 load -- 记录
是n个数据元素的有限序列,若将线性表记为\((a_1,...,a_{i-1},a_i,a_{i+1},...,a_n)\),则表中\(a_{i-1}\)领先于\(a_i\),\(a_i\)领先于\(a_i+1\),称\(a_{i-1}\)是\(a_i\)的直接前驱元素,\(a_{i+1}\)是\(a_i\)的直接后继元素。
线性表元素的个数\(n(n>=0)\)定义为线性表的长度,当\(n=0\)时,称为空表。
其它定义介绍:
item
):一个数据元素可以由若干个数据项构成record
):数据元素称为记录file
):含有大量记录的线性表称为文件对于非空的线性表或者线性结构的特点:
用一组地址连续的存储单元依次存储线性表的数据元素,这种存储结构的线性表称为顺序表示
特点:逻辑上相邻的数据元素,物理次序也是相邻的。
只要确定好了存储线性表的起始位置,线性表中任一数据元素都可以随机存取,所以线性表的顺序存储结构是一种随机存取的储存结构,因为高级语言中的数组类型也是有随机存取的特性,所以通常我们都使用数组来描述数据结构中的顺序储存结构,用动态分配的一维数组表示线性表。
以最简单的学生信息管理为例:
首先先创建两个数据结构,如下:
#define maxsize 100 //定义学生最大数量
#define OK 1 ? ? ? //正确标志
#define ERROR 0? ? ?//失败标志
//学生信息的数据结构
typedef struct
{
? ? int id;? ?//学生id
? ? char name[30];? ?//学生姓名
? ??
}Student;
//顺序表数据结构
typedef struct
{
? ? Student *elem;? ?//储存空间的基地址
? ? int length;? ? ? //数据结构的长度
}SqList;
//定义SqList类型的变量
SqList L;
描述线性表顺序存储的三个属性:
概念:用一组任意的存储单元存储线性表的数据元素(这组存储单元可以是连续的,也可以是不连续的),包括数据域和指针域,数据域存数据,指针域指示其后继的信息。
标签:变量 信息 alt strong math 随机 load -- 记录
原文地址:https://www.cnblogs.com/pankypan/p/13245730.html