(代码补全)本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。
List Merge( List L1, List L2 )
{
//新建一个头结点
struct Node *L=(struct Node *)malloc(sizeof(struct Node));
struct Node *p=L;
struct Node *r,*s;
r=L1->Next;
s=L2->Next;
while(r&&s)
{
if(r->Data<s->Data)
{
p->Next=r;//一旦这个操作后:将L1的结点给p后一个,L1这个结点位置对原链表的操作不再起作用
p=r;
r=r->Next;
}
else
{
p->Next=s;
p=s;
s=s->Next;
}
}
if(r)
s=r;//让L2成为最后剩的那个
p->Next=s;
L1->Next=NULL;//错了半天原来忘了写这一句,还是得会看输入输出样例!
L2->Next=NULL;
return L;
}