Bootstrap

数据结构复习之线性表(定义、基本操作)

数据结构三要素:逻辑结构、数据的运算、存储结构(物理结构)--【存储结构不同,运算的实现方式不同】

线性表的定义
 
线性表是具有 相同 数据类型的 n n ≥0 )个 数据元素 有限 序列 ,其中 n 表长 ,当 n = 0 时线
性表是一个 空表 。若用 L 命名线性表,则其一般表示为
L= ( a 1 , a 2 , … , a i , a i +1 , … , a n )
几个概念:
a i 是线性表中的“第 i 个”元素线性表中的 位序
a 1 表头元素 a n 表尾元素
除第一个元素外,每个元素有且仅有一个 直接前驱 ;除最后一个元素外,每个元素有且仅
有一个 直接后继
总结一下:
线性表的基本操作
为什么要实现对数据结构的基本操作?
①团队合作编程,你定义的数据结构要让别人能够很方便的使用(封装)
②将常用的操作 / 运算封装成函数,避免重复工作,降低出错风险。
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) :求表长。返回线性表 L 的长度,即 L 中数据元素的个数。
PrintList(L) :输出操作。按前后顺序输出线性表 L 的所有元素值。
Empty(L) :判空操作。若 L 为空表,则返回 true ,否则返回 false
从无到有
从有到无
Tips
①对数据的操作(记忆思路) —— 创销、增删改查
C 语言函数的定义 ——
< 返回值类型 > 函数名 (< 参数 1 类型 > 参数 1 < 参数 2 类型 > 参数 2 ……)
③实际开发中,可根据实际需求定义其他的基本操作
④函数名和参数的形式、命名都可改变( Reference :严蔚敏版《数据结构》)
⑤什么时候要传入引用“ & —— 对参数的修改结果需要 “带回来”
总结:
复习考研数据结构第三天!!!
;