2.1 线性表的定义和基本操作
思维导图
一、线性表的定义
线性表是具有相同数据类型的 n(n >= 0)个数据元素的有限序列,其中 n 为表长,当 n = 0 时,线性表是一个空表。
$$ L = (a_1, a_2, ..., a_i, a_{i+1}, ..., a_n) $$式中,a1 是唯一一个“第一个”数据元素,又称表头元素:an是唯一的“最后一个”数据元素,又称表尾元素。除第一个元素外,每个元素有且仅有一个直接前驱。除最后一个元素外,每个元素有且仅有一个直接后继。以上就是线性表的逻辑特性,这种线性有序的逻辑结构正是线性表名字的由来。
线性表的特点如下:
- 表中元素的个数有限;
- 表中元素具有逻辑上的顺序性,表中元素有其先后次序;
- 表中元素都是数据元素,每个元素都是单个元素;
- 表中元素的数据类型都相同,这意味着每个元素占有相同大小的存储空间;
- 表中元素具有抽象性,即仅讨论元素间的逻辑关系,而不考虑元素究竟是表示什么内容。
二、线性表的基本操作
线性表的主要操作如下:
- 初始化表:构造一个空的线性表;
- 求表长:返回线性表 L 的长度;
- 按值查找:在线性表中查找具有给定关键字的元素;
- 按位查找:获取线性表中第 i 个位置的元素的值;
- 插入操作:在表的第 i 个位置上插入指定元素 e;
- 删除操作:删除表的第 i 个位置的元素,并用 e 返回删除元素;
- 输出操作:按前后顺序输出线性表 L 的所有元素值;
- 判空操作:若 L 为空表,则返回 True,反之为 Fasle;
- 销毁操作:销毁线性表,并释放线性表所占用空间。