线性表的基本操作
相关视频参考(来自动力节点):www.bilibili.com/video/BV13C…
相关资料下载:www.bjpowernode.com/?juejin
基本操作(一)
- InitList(&L)
构造一个空的线性表L。
- DestroyList(&L)
初始条件: 线性表L必须存在
操作结果:销毁线性表L
- ClearList(&L)
初始条件:线性表L必须存在
操作结果:将线性表L重置为空表
基本操作(二)
- ListEmpty(L)
初始条件: 线性表L必须存在
操作结果:若线性表L为空表(n=0),则返回TURE;否则返回FALSE。
- ListLength(L)
初始条件: 线性表L必须存在
操作结果:返回线性表L中的数据元素个数。
基本操作(三)
- GetElem(L,i,&e)
初始条件: 线性表L必须存在 ,1<=i<=ListLength(L).
操作结果:用e返回线性表L中第i个数据元素的值。
- LiocateElem(L,e,compare())
初始条件: 线性表L必须存在 ,compare()是数据元素判定元素。
操作结果:返回线性表L中第一个与e满足compare()的数据元素的位序,若不存在返回0.
基本操作(四)
- PriorElem(L,cur_e,&pre_e)
初始条件: 线性表L必须存在
操作结果:若cur_e是L的数据元素,且不是第一个,则用pre_e返回它的前驱,否则操作失败;pre_e无意义
- NextElem(L,cur_e,&next_e)
初始条件: 线性表L必须存在
操作结果:若cur_e是L的数据元素,且不是最后一个,则用next_e返回它的前驱,否则操作失败;next_e无意义
基本操作(五)
- ListInsert(&L,i,e)
初始条件: 线性表L必须存在,1<=i<=ListLength(L)+1.
操作结果:在L的第i个位置之前插入新的数据元素e,L的长度加一
基本操作(六)
- ListDelete(&L,i,&e)
初始条件: 线性表L必须存在,1<=i<=ListLength(L).
操作结果:删除L的第i个数据元素,并用e返回其值,L的长度减一。
- ListTraverse(&L,visited())
初始条件: 线性表L必须存在
操作结果:遍历,依次对线性表中每个元素调用visited()