0.本篇问题
- 线性表,顺序表,链表什么关系?它们是逻辑结构还是存储结构?
- 线性表的基本操作有哪些?
线性表是具有相同数据元素的有限序列。
表中元素有先后次序,每个元素占有相同大小的存储空间。
一、线性表的相关概念P12
- 表头元素
- 表尾元素
- 直接前驱(前驱) 除表头元素没有前驱,其余每个元素都有一个前驱
- 直接后继(后继) 除表尾元素没有后继,其余每个元素都有一个后继
- 空表
二、线性表的基本操作
因为线性表的实现方式有很多种,可以用顺序表和链表实现,代码也会有所不同,但是线性表要实现的基本操作还是大差不差的。所以本篇只有一个粗略的介绍。具体可看:
线性表的顺序表示👉 👈
线性表的链式表示👉 👈
如果一个操作需要修改线性表的内容就要传需要 被修改的元素 的指针,或者引用(&)C++
① InitList(&L) :初始化表,构造一个空的线性表。
② Length(L) :求表长。
③ LocateElem(L,e) :在表中查找值为e元素。
④ GetElem(L,i) :获取表中第i个位置的元素的值。
⑤ ListInsert(&L,i,e) :在第i个位置上插入值为e的元素。
⑥ ListDelete(&L,i,&e) :删除第i个元素的位置,并将删除的值返回给e(e是线性表外部定义的变量,要改变它就要传指针或者引用)
⑦ PrintList(L) :按顺序输出表的元素。
⑧ Empty(L) :判断表是否为空。
⑨ DestroyList(&L) :销毁线性表,释放L所占的空间。
-THE END-