请各位大虾看看我这求交集的程序有什么问题。
集合A:a,c,e,h集合B;a,b,d,f,h
Lnode *Sect(Lnode *la,Lnode *lb) //求交集
{ Lnode *lc,*p,*pa=la->next,*pb=lb->next; //*pa,和*pb分别指向集合A,B的头元素
lc=(Lnode *)malloc(LEN); //lc保存交集
p=lc;
while(pa!=NULL)
{
while(pb!=NULL&&pb->data<pa->data)
pb=pb->next;
if(pb!=NULL&&pb->data==pa->data)
{
p->next=pb;
p=pb;
}
pa=pa->next;
}
return lc;
}
为什么求出来的结果跟求并集一模一样???