线性结构的特点
存在唯一的一个被称做第一个的数据元素
存在唯一的一个被称做最后一个的数据元素
除第一个之外集合中的每个数据元素均只有一个前驱
除最后一个之外集合中每个数据元素均只有一个后继
线性表的定义
线性表(Linear List)是由n(n>)个性质相同的数据元素组成的有限序列记为(aaa…an)
表中数据元素的个数n定义为线性表的长度n=的表称为空表即该线性表不包含任何数据元素
线性表的两类存储结构
顺序存储结构(顺序表)
链式存储结构(链表)
线性表的运算
常见的线性表的基本运算有如下六种
InitList(L)
构造一个空的线性表L即表的初始化
ListLength(L)
求线性表L中的结点个数即求表长
GetNode(Li)
取线性表L中的第i个结点这里要求≤i≤ListLength(L)
LocateNode(Lx)
在L中查找值为x的结点并返回该结点在L中的位置若L中有多个结点的值和x相同则返回首次找到的结点位置若L中没有结点的值为x则返回一个特殊值表示查找失败
InsertList(Lxi)
在线性表L的第i个位置上插入一个值为x的新结点使得原编号为ii+…n的结点变为编号为i+i+…n+的结点这里≤i≤n+而n是原表L的长度插入后表L的长度加
DeleteList(Li)
删除线性表L的第i个结点使得原编号为i+i+…n的结点变成编号为ii+…n的结点这里≤i≤n而n是原表L的长度删除后表L的长度减