全文预览

数据结构线性表的链式表示和实现

上传者:hnxzy51 |  格式:docx  |  页数:3 |  大小:48KB

文档介绍
ext,pc;//pa>pb分别指向La、Lb的首元结点(待比较结点)Lc=pc=La;//用La的头结点作为Lc的头结点,pc指向1启的头结点(Lc的尾结点)while(pa&&pb)//La和Lb中的元素都未比较完if(pa->data<=pb->data)//La的当前元素不大于Lb的当前元素{pc->next=pa;//将pa所指结点归并到Lc中pc二pa;//pc指向表Lc的最后一个结点pa=pa->next;//表La的下一个结点成为待比较结点}else//Lb的当前元素小于La的当前元素{pc->next=pb;//将pb所指结点归并到Lc中pc二pb;//pc指向表Lc的最后一个结点pb=pb->next;//表Lb的下一个结点成为待比较结点}pc->next=pa?pa:pb;//插入剩余段free(Lb);//释放Lb的头结点Lb二NULL;//Lb不再指向任何结点}voidPrintf_L(LinkList&L){LNode*p;p=L->next;while(p!二NULL){printf(z,%dp->data);p=p->next;}printf(z/\n,z);}voidmain(){intn=5;LinkListLa,Lb,Lc;printf(z/按非递减顺序,;CreateList(La,n);//根据输入顺序,正位序建立线性表printfC按非递减顺序,〃);CreateList(Lb,n);//根据输入顺序,逆位序建立线性表printf(,zLa=z/);Printf_L(La);//输岀链表La的内容printf("Lb=");Printf丄(Lb);//输出链表Lb的内容MergeList(La,Lb,Lc);//按非递减顺序归并La和Lb,得到新表Lcprintf(Z/Lc=,/);Printf_L(Lc);//输出链表Lc的内容

收藏

分享

举报
下载此文档