/*
求两个链表的差集只需在A中删除A、B共同的元素即可
算法:设p、q分别指向A、B的头结点,循环进行比较,将节点值小的后移。
若两者所指节点值相同则删除p所指节点。最后p与q任意一指针指向NULL则结束
*/
void Difference(LNode *&A,LNode* B)
{
LNode *p=A->next,q=b->next;
LNode *pre=A;
LNode *r;
while(p!=NULL&&q!=NULL)
{
if(p->data<q->data)
{
pre=p;
p=p->neat;
}
else if(p->data>q->data)
{
q=q->next;
}
else
{
pre->next=p->next;
r=p;
p=p->next;
free(r);
}
}
}
求两个递增单链表的差集
最新推荐文章于 2022-03-27 23:42:12 发布