目录
一、线性表的定义
线性表是一种逻辑结构,表示元素之间一对一的相邻关系。顺序表和链表是指存储结构。两者不是同一个概念。
(一)定义
线性表是具有相同数据类型的n个数据元素的有限序列,其中n为表长
当n=0时,线性表是一个空表
若用L命名线性表,则一般表示为:
是表头元素,是表尾元素
除了第一个元素,每个元素有且只有一个直接前驱
除了最后一个元素,每个元素有且只有一个直接后继
(二)特点
- 表中元素个数有限
- 表中元素有先后次序
- 表中元素都是数据元素,每个元素都是单个元素
- 表中元素的数据类型都相同,每个元素占有相同大小的存储空间
- 表中元素具有抽象性,仅讨论元素间的逻辑关系,而不考虑元素究竟表示什么内容
二、线性表的基本操作
基本操作 | 操作函数 | 备注 |
初始化 | InitList(&L) | 构建一个空的线性表 |
求表长 | Length(L) | 返回线性表长度 |
按值查找 | LocateElem(L,e) | 查找具有给定关键字值的元素 |
按位查找 | GetElem(L,i) | 获取表L中第i个位置元素的值 |
插入操作 | ListInsert(&L,i,e) | 在表L中的第i个位置上插入指定元素e |
删除操作 | ListDelete(&L,i,&e) | 删除表L中第i个位置的元素,并用e返回 |
输出操作 | PrintList(L) | 按前后顺序输出表L的所有元素值 |
判空操作 | Empty(L) | 若L为空,返回True,否则为False |
销毁操作 | DestroyList(&L) | 销毁线性表,并释放线性表L所占用的内存空间 |