33,311
社区成员
发帖
与我相关
我的任务
分享
LB *HB(LB *A,LB *B)
{
LB *pa=A,*pb=B,*pre=NULL,*C,*q; //pa 和pb 分别指向A,B 的当前元素
while(pb||pa) //pa pb 不都到结尾时
{
if(pb&&pa&&pa->data<pb->data||!pb)//当pa pb 都没到头且pa->data<pb->data 或者 pb到头时
{ //将A 的元素插入新表
C=pa; //C指向当前节点
q=pa->Q; //q保存当前节点的下一节点
pa->Q=pre; //pa的下一个节点指向pre
pa=q; //pa更新到下一节点
}
else //将B 的元素插入新表
{
C=pb;
q=pb->Q;
pb->Q=pre;
pb=q;
}
pre=C; //pre保存最新节点
}
return C;
}