/*前面已经说过结构体中的n是代表已经放入线性表中元素的个数,所以判断线性表是否为空就是判断n的值是否为空*///书中代码如下intisNullList_seq(PSeqList palist){return(palist -> n ==0); } //方法声明为intlocate_seq(PSeqList palist,DataType x);//在palist所指的顺序表中寻找第一个值为x的...
("1:判断线性表是否为空\n"); printf("2:查询线性表的长度\n"); printf("3:查找线性表的第i个元素\n"); printf("4:查找值为x的元素所在的位置\n"); printf("5:数据元素x的前驱为\n"); printf("6:数据元素x的后继为\n"); printf("7:在线性表第i个位置前插入新元素x\n"); printf("8:...
在判断线性表是否为空时,首先判断头结点是否存在,当头结点存在时看头结点的指针域是否为空,当指针域为空时说明首元结点不存在,单链表是空表;当指针域不为空时说明存在首元结点,单链表不是空表。如果头结点不存在的话说明单链表不存在,无法判断是否为空表。 7.获取线性表的长度 //获取线性表的长度StatusListLe...
L->length =0;//置空线性表的长度为0} (4)销毁线性表 voidDestroyList(SqList*& L){free(L);//释放L所指的顺序表空间} (5)判断是否为空 boolListEmpty(SqList* L){return(L->length ==0); } (6)求线性表长度 intListLength(SqList* L){return(L->length); } (7)求表中某个值 boolGetEle...
队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。 术语: 入队push 出队pop 返回队列大小 size 判断是否为空 isEmpty 队头元素 front 队尾元素 back 2、队列的顺序存储 队列也是一种特殊的线性表;可以用线性表顺序存储来模拟队列。 1 接口 初始化队列 init 入队push 出队pop 返回...
线性表的顺序存储结构删除元素 /*删除元素*/StatusDeleteListElem(List*list,int pos,ElemType*ele){int i;//判断线性表是否为空if(list->length==0){returnERROR;}//判断删除位置是否在有效,且删除位置是否有效。if(pos<1||pos>list->length){returnERROR;}//获取要删除元素*ele=list->data[pos-1];//...
IsEmptyList(L):判断线性表是否为空。 初始条件:线性表L存在, 操作结果:若线性L为空,则返回值1;否则返回值0。 LocationList(L,x):查找值为x结点位置。 初始条件:线性表L存在,已知数据元素x, 操作结果:若在L中找到第一个和x值相匹配的数据元素,则返回它在L中的位置;否则返回-1。
ClearList(&L) &L你可以想象成一个容器(数组) :清空线性表 ListEmpty(L) L你可以想象成一个容器(数组) :线性表是否为空 ListLength(L) L你可以想象成一个容器(数组) :线性表中元素个数 GetElem(L, i, &e)L你可以想象成一个容器(数组) i代表索引 &e代表获取的元素是啥? :获取线性表中指定的元素 ...
6、清空顺序表 //6 清空顺序表/* 初始条件:顺序线性表L已存在。操作结果:将L重置为空表 */voidClearTable(SqlTable*table){table->length=0;} 7、判断顺序表是否为空 //7 判断顺序表是否为空/* 初始条件:顺序线性表L已存在。操作结果:若L为空表,则返回TRUE,否则返回FALSE */StatustableEmpty(SqlTable ...