小甲鱼线性表

线性表的抽象数据类型

抽象数据类型就是把类型和操作捆绑在一起,数据元素之间的关系是一对一的关系

ADT 线性表(List)

Data (数据) 数据就是里面所有的元素

线性表的数据对象集合,每个元素的类型均为DataType;

Operation

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

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

ClearList(*L):将线性表清空,清0

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的元素个数

08讲:


typedef struct {
ElemType data[maxsize]; int length;
}array; 在《数据结构》中,关于数据元素的类型定义均用“ ElemType e;”来表示,其中e是表示数据元素的变量,而ElemType则是它的类型,ElemType的含义就是“数据元素的类型”,是一个抽象的概念,是表示我们所要使用的数据元素应有的类型。
使用:typedef int ElemType;//定义ElemType为int类型
也可以用模板表示,类似template里面的T。 这对于初学数据结构的学生来说理解起来有些难度,为了利于理解,我们可以把”ElemType“等同于”一套房子“来理解:
“一套房子”的含义大家都非常清楚,但一套房子的具体含义是因人而异的,有的认为是“四室二厅”,有的认为是“二室一厅”,也有的认为是“一室一厅”,对此大家也没有任何异议!

线性表的顺序存储结构



你可能感兴趣的:(小甲鱼数据结构)