设计算法,删除顺序表和链式表中值为X的结点

来源:百度知道 编辑:UC知道 时间:2024/05/15 06:35:50
数据结构的题

1.删除顺序表中值为X的结点
int listdelete(Sqlist *L,elemtype x,int n)
{
int j,i=0;
for(;(i<n)&&(L.elem[i]!=x);i++)
j=i;
if(j>=n) return 0;
for(j=i+1;j<n;j++)
{
L.elem[j-1]=L.elem[j];
}
L.length--;
return 1;
}
2.删除链式表中值为X的结点
int listdelete(LinkList *L,elemtype x,int n)
{
LinkListq, p=L;
int i=0;
while(p->next&&i<n&&p->data!=x){
p=p->next;
i++;
}
if(!(p->next)||i>=n) return 0;
q=p->next;
p->next=q->next;
return 1;
}