线性表的简单问题

来源:百度知道 编辑:UC知道 时间:2024/05/24 21:27:36
typedef struct
{
ElemType *elem; //存储空间长度
int length; //当前长度
int listsize; //当前分配的存储容量(以sizeof(ElemType)为单位)
}SqList;

/****1.构造一个空的线形表*****/
Status InitList(SqList &L)
{
L.elem=(ElemType *)malloc(LIST_INIT_SIZE*sizeof(ElemType));
if(!L.elem)
exit(OVERFLOW);
L.length=0;
L.listsize=LIST_INIT_SIZE;
return OK;

请问Status InitList(SqList &L) 中的L事什么意思? SqList &L又是什么意思?请高手讲详细点。

Status Initlist(SqList &L) //构造一个空的线性表L.L既是表的名称.
SQLlist 线形表.
构建和销毁的一些简单操作如下:
Status Initlist(SqList &L){
//构造一个空的线性表L.
L.elem=new ElemType[LIST_INIT_SIZE];//分配存放线性表的空间
if(!L.elem) return OVERFLOW; //存储空间分配失败
L.length=0; //空表长度为0;
L.listsize=LIST_INIT_SIZE; //初始存储容量
return OK;
} //InitList

Status DestroyList(SqList &L)
{
//销毁线性表
delete [] L.elem;
return OK;
} //DestroyList

Status Clearlist(SqList &L){
//将线性表重置为空表.
delete &L;
L.elem=NULL;
L.length=0; //空表长度为0;
L.listsize=0; //初始存储容量
return OK;
} //Clearlist

Status ListLength(SqList L){
//返回线性表L中数据元素个数
return L.length;
} //ListLength

Status ListEmpty(SqList L){
//检查线性表是否为空表
if(!L.length)
return TRUE;
else
return FLASE;
} //ListEmpty

Status DisplayList(SqList L){
//显示线性表
int i;
for(i=0