基础概念
About 7 min
线性表的基础概念和操作
强调线性表是一种逻辑结构,不是存储结构
定义
线性表是具有相同数据类型的n(n≥0)个数据元素的有限序列。一般表示:
L=(a1,a2,a3......an) 其中n可以理解为表长(线性表的长度),n=0时候,即表空
表头元素
:线性表中唯一的“第一个”数据元素,例如a1表尾元素
:线性表中唯一的“最后一个”数据元素,例如an
重要逻辑特性:
- 除表头元素外,线性表中每个元素有且仅有一个
直接前驱
- 除表尾元素外,线性表中每个元素有且仅有一个
直接后继
基于此,这种线性有序的逻辑结构,使得线性表的特点如下:
- 元素的个数有限(强调有限序列)
- 元素在逻辑上具有顺序性,在序列中每个元素都是都有先后次序的
- 元素都数据元素,每个元素都是单个元素
- 元素的数据类型都相同(强调相同数据类型),每个数据元素占用相同大小的存储空间
- 元素具有抽象性,仅仅讨论元素之间的逻辑关系,不需要去考虑元素究竟表示的什么内容
Tips: 线性表是一种逻辑结构,表示元素之间一对一的相邻关系。顺序表和链表则指的是存储结构
基本操作
InitList(&L)
: 初始化表。构造空的线性表Length(L)
:获取表的长度。返回线性表L的长度,即表中的数据元素个数LocateElem(L,e)
:按值查找操作。在表L中国查找具有给定关键字的元素GetElem(L,i)
:按位查找操作。获取表中第i个位置的元素的值ListInsert(&L,i,e)
:插入操作。在表的第i个位置上插入指定元素eListDelete(&L,i,&e)
:删除操作。删除表中第i个位置的元素,并用e返回删除元素的值PrintList(L)
:输出操作。按照前后顺序(如:1、2....n)输出线性表的所有元素值Empty(L)
:判空操作。当表L为空,则返回true,否则返回falseDestoryList(&L)
:销毁操作。将线性表销毁,释放线性表L所占用的内存空间(类似:释放内存)
线性表是具有相同的数据类型的有限个数据元素组成的,数据元素是由数据项组成的