已知线性表中的元素以值递增有序排列,并以单链表作存储结构。试写一算法,删除表中所有大于x且小于y的元素(若表中存在这样的元素)同时释放被删除结点空间。
正确答案:voidDelete_list(Lnode*head,ElemTypex,ElemTypey)
{Lnode*p,*q;
if(!heaD.returnERROR;
p=head;q=p;
while(!p)
{if(p->data>x)&&(p->dataif(p==heaD.
{head=p->next;free(p);
p=head;q=p;}
else
{q->next=p->next;free(p);
p=q->next;}
else
{q=p;p=p->next;}
}
}
{Lnode*p,*q;
if(!heaD.returnERROR;
p=head;q=p;
while(!p)
{if(p->data>x)&&(p->data
{head=p->next;free(p);
p=head;q=p;}
else
{q->next=p->next;free(p);
p=q->next;}
else
{q=p;p=p->next;}
}
}
答案解析:有
微信扫一扫手机做题