 有顺序表A和B,其元素均按从小到大的升序排列,编写一个算法将它们合并成一个顺序表C,要求C的元

如题所述

第1个回答  2010-09-20
#define new (struct lb*)malloc (sizeof(struct lb))
struct lb
{int data;
struct lb *next;
};

struct lb *hb(struct lb *wla,struct lb *wlb)
{struct lb *wlc,*p,*q,*w;
p=wla;q=wlb;w=wlc=new;
while(p!=0&&q!=0)
{
if (p->data<q->data)
{w->next=new;w=w->next;
w->data=p->data;
p=p->next;
}
else if(p->data>q->data)
{w->next=new;w=w->next;
w->data=q->data;
q=q->next;
}
}
while(p!=0)
{w->next=new;w=w->next;
w->data=p->data;
p=p->next;
}
while(q!=0)
{w->next=new;w=w->next;
w->data=q->data;
q=q->next;
}
w->next=0;
wlc=wlc->next;
return(wlc);
}

prn(struct lb *whead)
{ struct lb *p;
p=whead;
while(p!=0)
{printf("%d",p->data);
p=p->next;
}
}

main()
{struct lb *la,*lb,*lc;
la=crea_lb();
lb=crea_lb();
lc=hb(la,lb);
prn(lc);
}

以上就是你要的代码.prn函数是显示出新的链表.本回答被提问者和网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网