2.1 线性表
线性表
定义
线性表是具有相同数据类型的 n(n>=0) 个数据元素的有限序列。其中 n 为表长, 当 n=0 时线性表是一个空表。若用 L 命名线性表,其一般表示为:
L = (a1, a2, a3, …, an)
数字下标为元素的位序。位序从 1 开始。位序为 1 的元素称为表头元素,位序最大的元素为表尾元素。
除表头元素外,每个元素都有且仅有一个直接前驱;除表尾元素外,每个元素有且仅有一个直接后继。
线性表:Linear List
分类
线性表是数据元素在逻辑上顺序排列的抽象数据类型。
可以按存储结构(物理分布情况)分类:
- 顺序表:数据元素在内存中按顺序排列存储的线性表。
- 链表:数据元素在内存中离散分布,由指针按顺序连接的线性表。按指针数量又可细分:
- 单链表,除表尾元素外,每个数据元素只有一个指针,指向其后面的元素。
- 双链表:除表头和表尾元素外,每个数据元素有两个指针,分别指向前一项和后一项元素。
- 循环链表:表头和表尾元素相连的链表。
- 静态链表:数据元素分布在一块固定内存(数组)中的链表。
基本操作
1、为什么要实现对数据结构的基本操作?
- 团队合作编程,你定义的数据结构要让别人能够很方便地使用(封装)
- 将常用的操作/运算封装成函数,避免重复工作,降低出错风险。
2、基本操作
- 初始化表,构造一个空的线性表,分配内存空间。
- 销毁线性表,释放内存空间。
- 插入,在表中指定位置插入一个元素。
- 删除,删除表中指定元素。
- 按值查找,查找表中包含指定关键字的元素。
- 按位查找,根据位序获取元素的值。
3、其他常用操作
- 求表长,返回线性表的长度,即数据元素的个数。
- 显示表,按顺序将线性表所有内容显示出来。
- 判断空表,如果线性表是空的,没有一个元素,返回 true。反之返回 false。
如果觉得本文有用,万望看官慷慨解囊,不吝打赏,激励本编提供更加优质的内容
[点击进行打赏](https://www.cnblogs.com/52note/p/16507868.html)