线性表是n个数据元素(也称结点或表元素)组成的有限序列k0,k1,...,kn-1,其中:k0为开始结点,没有前驱,仅有一个后继;kn-1为终端结点,没有后继,仅有一个前驱;其他结点ki(0<i<n-1)有且仅有一个前驱ki-1和一个后继ki+1;n为线性表的长度,当n=0时称为空表。
线性表中的各个数据元素并不要求是同一种数据类型。为描述简单起见,只讨论数据类型相同的数据元素组成的线性表,这种数据元素相同的线性表又称为数组和向量。数据元素不同类型的线性表可通过建立索引表后,转化为数据元素相同的线性表处理。
组成线性表的数据元素是一个数据项。这种数据项可以是一个初等项,如一个数、一个字符等。当线性表的数据元素是单个字符时,这种线性表也称为串。串是一种字符数组。作为数据元素的数据项也可以是组合项,它又包含若干个数据项,而且这若干个数据项的数据类型还可以不同,这种数据元素称为记录,由这种数据元素组成的线性表又称为文件。
线性表的基本运算主要有以下几种:
(1)表的初始化,即生成一个空表。
(2)判断表是否为空,即表结点个数是否为零。
(3)判断表是否已满,即表结点个数是否为最大允许个数。
(4)求表长,即求表中结点个数。
(5)取表中第i个结点。
(6)查找表中值为x的结点。
(7)在表中第i个位置上插入一个新结点。
(8)删除表中的第i个结点。