线性表是一个相当灵活的数据结构,其长度可根据需要增长或缩短,即对线性表的数据元素不仅可以进行访问,而且可以进行插入和删除等操作。下面给出线性表的抽象数据类型定义:
ADT Lisk{ 数据对象:D = {ai|ai∈ElemSet,i = 1,2,...,n,n≥0} 数据关系:R = {<ai-1,ai>|ai-1,ai∈D,i = 2,...,n} 基本操作: InitList(&L) 操作结果:构造一个空的线性表L DestroyList(&L) 初始条件:线性表L已存在 操作结果:销毁线性表L ClearList(&L) 初始条件:线性表L已存在 操作结果:将L重置为空表 ListEmpty(L) 初始条件:线性表L已存在 操作结果:若L为空表,则返回true,否则返回false ListLength(L) 初始条件:线性表L已存在 操作结果:返回L中数据元素个数 GetElem(L,i,&e) 初始条件:线性表L已存在,且1≤i≤ListLength(L) 操作结果:用e返回L中中第i个数据元素的值 LocateElem(L,e) 初始条件:线性表L已存在 操作结果:返回L中第1个值与e相同的元素在L中的位置。若这样的数据元素不存在,则返回值为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已存在 操作结果:在L中第i个位置之前插入新的数据元素e,L的长度加1 ListDelete(&L,i) 初始条件:线性表L已存在且非空,且1≤i≤ListLength(L) 操作结果:删除L的第i个数据元素,L的数据减1 TraverseList(L) 初始条件:线性表L已存在 操作结果:对线性表L进行遍历,在遍历过程中对L的每个结点访问一次 }ADT List
标签:存在,线性表,结果,元素,初始条件,类型定义,线性,操作,数据结构 From: https://www.cnblogs.com/Santariki/p/16795171.html