问题 问答题

假设以带头结点的单链表表示有序表,单链表的类型定义如下:
typedef struct node
DataType data:
struct node *next
LinkNode, *LinkList;
编写算法,从有序表A中删除所有和有序表B中元素相同的结点。

答案

参考答案:void deleted_list(LinkList A,LinkList B)
{
LinkList p,q,r;
r=A:
p=A—>next;
q=B—>next;
while(p!—NULL&&q!=NULL)
{
if(p—>data>q—>data)
q=q—>next
else if(p—>data<q—>data)
{
r=P:
p—p—>next;
}
else
{
r—>next=p—>next;
free(p);
p=r—>next:
}
}
}

问答题 简答题
单项选择题