操作前提: 线性表 L 已存在。 操作结果: 如果 L 为空表则返回 0,否则返回表中的元素个数。 ③ GeiData(L,i) 操作前提: 表L存在,且1≤i≤LisiLength(L)。 操作结果: 返回线性表 L 中第 i 个合法元素的值。 ④ InsList(L,i,e) 操作前提:表L已存在,e为合法元素值且 1≤i≤ ListLength(L)+1...
⑤ ListInsert(L,i,x) 插入操作,在线性表L中第i个位置之前插入一个新元素。L的长度加1。 ⑥ ListDelete(L,i) 删除操作,删除线性表L中的第i个元素,L的长度减1。 ⑦ ListEmpty(L) 判断线性表L是否为空,空表返回TRUE,非空表返回FALSE。 ⑧ ClearList(L) 将已知的线性表L置为空表。 ⑨ DestroyList(L...
本文要求实现线性表的就地逆置操作,并选择合适的存储结构,以同学录为例完成线性表的建立、查找、插入、删除、修改等操作来实现有关线的操作与应用。 二、基本要求 1、采用顺序和链式存储结构,分别实现线性表的就地逆置操作; 2、采用双向链表,实现报数游戏:即n个人报数,先向n端报数,报到m出列。当报数到达表尾时,...
线性表(linear list)是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构,常见的线性表:顺序表、链表、栈、队列等。 线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构上并不一定是连续的,线性表在物理上存储时,通常以数组和链式结构的形式存储。 链表是典型的线性...
栈是一种操作受限的线性表,上面提到的顺序表和链表可以在表的两端和表内进行插入删除操作,而栈仅允许在一端(栈顶)进行插入删除操作,也就是进(入)栈和出栈操作,栈顶是栈读取数据的唯一入口,操作遵循“先进后出(LIFO)”的原则。例如Object-C中的导航控制器就是用栈的特性实现的。
销毁线性表 1voidDestroyList(SqList &L){2if(L.elem)3{4free(L.elem);//释放存储空间5}6} 获得元素操作 1//操作结果:用e返回L中第i个数据元素的值2intGetElem(SqList L,inti,ElemType &e){3if(i<1||i>L.length)//判断i值是否合理,若不合理,返回ERROR4retrun ERROR;5elsee = L.length[i-...
数据的小米虫:数据结构与算法基础-听课摘抄1今天继续学习数据结构和算法基础。昨日的小结如下,今天主要学习线性表。 线性表1.线性表的定义和特点线性表(linear list)是由 n(n\geq 0) 个数据元素(结点) a_{1},a_{…
1.3.1顺序表的操作 Operation InitList(&L) 操作结果:初始化操作,建⽴⼀个空的线性表L. #defineMAXSIZE 100#defineOK 1#defineERROR 0#defineTRUE 1#defineFALSE 0//Status 代表函数的类型,其值是函数结果状态码typedefintStatus;//顺序表结构设计typedefstruct{int*data;intlength;}List;//1.1 顺序表的初...
三、线性表的抽象数据类型 Operation InitList(*L):初始化操作,建立一个空的线性表。 ListEmpty(L):判断线性表是否为空表,若线性表为空,返回true,否则返回false。 ClearList(*L):将线性表清空。 GetElem(L,i,*e):将线性表L中的第i个位置元素值返回给e。
数据结构与算法 第2章 线性表.ppt,第2章 线性表 (4课时) 线性表(Linear List)是一种最常用、最简单的典型线性数据结构,应用非常广泛。线性表是由n(n≥0)个数据元素组成的一个有限序列,线性表中数据元素的个数n称为线性表的长度。当 n=0时,称为空表。 对于非空线性表