线性表实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《算法与数据结构》实验报告

实验名称线性表实验室实验日期

void InitSqlist(SqList *list)

{

assert(list != NULL);

list->length = 0;

}

bool Insert(SqList *list,int val,int index)

{

//判断下标是否合法

if(index<0 || index>list->length || index>=MAX_SIZE) {

return false;

}

for(int i=list->length-1;i>=index;i--)//挪动数据

{

list->elem[i+1] = list->elem[i];

}

list->elem[index] = val; //插入数据

list->length++;

return true;

}

bool Delete(SqList *list,int index)

{

if(index<0 || index>=list->length)

{

return false;

}

for(int i=index;ilength-1;i++)

{

list->elem[i] = list->elem[i+1];

}

list->length--;

return true;

}

bool DeleteVal(SqList *list,int val,int index) {

int i = Search(list,val,index);

if(i < 0)

{

return false;

}

return Delete(list,i);

}

int Search(SqList *list,int val,int index) {

if(index<0 || index>=list->length)

{

return -1;

}

for(int i=index;ilength;i++)

{

if(list->elem[i] == val)

{

return i;

}

}

return -1;

}

int GetLength(SqList *list)

{

return list->length;

}

void Destroy(SqList *list)

{

相关文档
最新文档