大话数据结构(四)——线性表

线性表的定义

线性表(List):零个或多个数据元素的有限序列。

强调:首先它是个序列,元素之间是顺序的,若元素存在多个,则第一个无前驱,最后一个无后继,其他每个元素都有且只有一个前驱和后继。

        其次,线性表强调是有限的。

线性表元素的个数n(n>=0)定义为线性表的长度,当n=0时,称为空表。

在较复杂的线性表中,一个数据元素可以由若干个数据项组成。

线性表的抽象数据类型

线性表的抽象数据类型定义:

ADT 线性表(List)

Data 

      线性表的数据对象集合为{a1,a2,……an},每个元素的类型均为DataType。其中,除了第一个元素a1外,每个元素有且仅有一个直接前驱元素,除了最后一个元素an外,每个元素有且仅有一个直接后继元素。数据元素之间的关系是一对一的关系。

Operation

     InitList(*L);  初始化操作,建立一个空的线性表L

     ListEmpty(L); 若线性表为空,返回true,否则返回false

    ClearList(*L);将线性表清空

    GetElem(L,i,*e);将线性表L中的第i个位置元素值返回给e

    LocateElem(L,e);在线性表L中查找与给定值e相等的元素。如果查找成功,返回该元素在表中序号表示成功,否则,返回0表示失败

    ListInsert(*L,i,e); 在线性表L中的第i个位置插入新元素e

    ListDelete(*L,i,e);删除线性表L中的第i个位置元素,并用e返回其值

    ListLength(L);返回线性表L的元素个数

endADT

原文地址:https://www.cnblogs.com/snowwang/p/6027872.html