#include<iostream>
#include<stdlib.h>
using namespace std;
typedef int ElemType;
typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode ,*LinkList;
void MergeList(LinkList &La,LinkList &Lb,LinkList &Lc)
{
LinkList pa,pb,pc;
pa=La->next;
pb=Lb->next;
Lc=pc=La;
while(pa&&pb)
{
if(pa->data<=pb->data)
{
pc->next=pa;
pc=pa;
pa=pa->next;
}
else
{
pc->next=pb;
pc=pb;
pb=pb->next;
}
}
pc->next=pa?pa:pb;
free(Lb);
}
void CreateList_L(LinkList &L,int n)
{
LinkList p;
L=new LNode;
L->next=NULL;
LinkList q=L;
for(int i=1;i<=n;i++)
{
p=new LNode;
cin>>p->data;
p->next=NULL;
q->next=p;
q=p;
}
}
void show(LinkList L)
{
LinkList p;
p=L->next;
while(p)
{
if(p->next==NULL)
cout<<p->data<<endl;
else
cout<<p->data<<" ";
p=p->next;
}
}
void mergelist()
{
LinkList La,Lb,Lc;
int a,b;
cin>>a>>b;
CreateList_L(La,a);
//show(La);
CreateList_L(Lb,b);
//show(Lb);
MergeList(La,Lb,Lc);
show(Lc);
}
int main()
{
mergelist();
return 0;
}
/***************************************************
User name: TJRAC6015203228魏杰
Result: Accepted
Take time: 0ms
Take Memory: 156KB
Submit time: 2016-11-01 13:44:21
****************************************************/
sdut2119数据结构实验之链表四:有序链表的归并
最新推荐文章于 2020-05-18 13:00:32 发布