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

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/19 01:48:05
 有顺序表A和B,其元素均按从小到大的升序排列,编写一个算法将它们合并成一个顺序表C,要求C的元
xTmKP+wJ>/m?d$- \MX)uu8ŗ  cȆt&/vқԴ1apO899ܜsKT>~P(q[{^Ack uvucQZZ͒O1y̖qŴ0."$.i,/r"ð>墲jq#,`cVՅMSu>Deɖ%!@`=$6j,J!A&܈ nDuoN!Bq%KaFcRÐ'M{Tx*;R5&NZpnT}Thd8X4LˎGk:mkCQׅԁI33rr-%ʹyHb֞]Hy>  cN4 >7?]XmX`puW/=lUtg~<|j?IHRq

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

 有顺序表A和B,其元素均按从小到大的升序排列,编写一个算法将它们合并成一个顺序表C,要求C的元
#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->datadata)
{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函数是显示出新的链表.