给我完整的一段数据结构线性表的基础代码
时间: 2023-06-05 20:07:59 浏览: 54
好的,以下是基础的线性表代码:
```
typedef struct {
int *elems; // 存储数组的指针
int length; // 存储当前线性表的长度
int listsize; // 存储当前分配的存储容量
} SqList;
void InitList(SqList &l, int maxsize){
l.elems=new int[maxsize];
l.length=0;
l.listsize=maxsize;
}
void DestroyList(SqList &l){
delete l.elems;
l.length=0;
l.listsize=0;
}
bool ListInsert(SqList &l, int i, int e){
if(i<1 || i>l.length+1)
return false;
if(l.length>=l.listsize)
return false;
for(int j=l.length; j>=i; --j)
l.elems[j]=l.elems[j-1];
l.elems[i-1]=e;
++l.length;
return true;
}
bool ListDelete(SqList &l, int i, int &e){
if(i<1 || i>l.length)
return false;
e=l.elems[i-1];
for(int j=i; j<l.length; ++j)
l.elems[j-1]=l.elems[j];
--l.length;
return true;
}
int LocateElem(SqList l, int e){
for(int i=0; i<l.length; ++i)
if(l.elems[i]==e)
return i+1;
return false;
}
```
希望这能满足您的需求。