一、线性表的定义
线性表是一个具有相同特性的数据元素的有限序列
相同特性:所有元素属于同一数据类型
有限:数据元素个数是有限的,线性表中所含元素的个数叫做线性表的长度
序列:数据元素由逻辑序号唯一确定。一个线性表中可以有相同值得元素
二、线性表的知识结构
-
线性表的概念: 线性表ADT=逻辑结构 + 基本运算
-
线性表的存储结构
A、顺序存储结构—顺序表中基本运算的实现
B、链式存储结构:单链表 、双链表 、循环链表 -
线性表的应用
-
线性表的作用:
程序员可以直接使用它来存放数据-----作为存放数据的容器
程序员可以直接使用它的基本运算-----完成更复杂 -
特殊的线性表–有序表
三、线性表的运算
1. 初始化线性表 InitList(&L): 构造一个空的线性表L
2. 销毁线性表 DestroyList(&L): 释放线性表L占用的内存空间
3. 判断线性表是否为空表 ListEmpty(L): 若为空表,则返回为真;否则返回为假
4. 求线性表的长度 ListLength(L): 返回L中的元素个数
5. 输出线性表 DispList(L):线性表L不为空时,顺序显示L中各节点的值域
6. 求线性表L中指定位置的某个数据元素 GetElem(L,i,&e): 用 e 返回L中第i(1<=i<=n)各元素的值
7. 定位查找 LocateElem(L,e):返回L中第一个值域与e相等的逻辑位序。若这样的元素不存在,则返回值为0
8. 插入一个数据元素 ListInsert(&L,i,e): 在L的第i(1<=i<=n)个元素之前插入新的元素e, L 的长度增加1
9. 删除数据元素 ListDelete(&L,i,&e): 删除L的第i(1<=i<=n)个元素,并用e返回其值L 的长度减1