1.线性表的定义
线性表是由具有相同数据类型的n个数据元素组成的有限序列(有次序),n为表长,当n=0时线性表是一个空表。用L表示线性表时,其一般表示为
L = (a1a_1a1,a2a_2a2,…,aia_iai,ai+1a_{i+1}ai+1,…,ana_nan)
aia_iai是线性表的第i个元素,i表示其位序,位序是从1开始的。
a1a_1a1是表头元素,ana_nan是表尾元素。
2.线性表的基本操作
InitList(&L):初始化表。构造一个空的线性表L,分配内存空间。
DestroyList(&L):销毁列表。销毁线性表,并释放线性表L所占用的内存空间。
ListInsert(&L,i,e):插入操作。在表L中的第i个位置上插入指定元素e。
ListDelete(&L,i,e):删除操作。删除表L中的第i个位置的元素,并用e返回删除元素的值。
LocateElem(L,e):按值查找操作。在表L中查找具有给定关键字值的元素。
GetElem(L,i):按位查找操作。获取表L中第i个位置的元素的值。
其他常用操作:
Length(L):求表长
PrintList(L):输出操作。从前往后顺序输出线性表L的所有元素值。
Empty(L):判空操作
Tips:
对数据的操作(记忆思路)–创销、增删改查
3.为什么要实现对数据结构的基本操作
1.团队合作编程,你定义的数据结构要让别人能够很方便的使用
2.将运算封装成函数,避免重复工作
4.线性表的分类
线性表指的是数据元素在逻辑结构上是线性排列的,但由于其物理结构的不同,可分为顺序存储即顺序表和链式存储(链表),链表又可分为单链表、双链表、循环链表和静态链表。