c语言如何实现两链表合并

不要网上copy的,不用很复杂,越简单越好,叩谢!设X=(x1,x2,…,xn)和Y=(y1,y2,…,ym)为两个单链表,试写出将X和Y归并为一个单链表Z的算法,使得:... 不要网上copy的,不用很复杂,越简单越好,叩谢!
设X= (x 1 ,x 2 ,…,x n ) 和Y= (y 1 ,y 2 ,…,y m ) 为两个单链表,试
写出将X 和Y 归并 为一个单链表Z 的算法,使得:
┏ (x 1 ,y 1 ,x 2 ,y 2 ,…,x m ,y m ,x m+1 ,…,x n ) 当m<=n
Z= ┃
┗ (x 1 ,y 1 ,x 2 ,y 2 ,…,x n ,y n ,y n+1 ,…,y m ) 当m>n
这道题谁能答了追五十分!
展开
 我来答
bignode
2014-12-16 · TA获得超过2664个赞
知道大有可为答主
回答量:1427
采纳率:75%
帮助的人:553万
展开全部
只要让第一个链表的尾部元素 的 next 指针,指向第二个链表的第一个元素就可以了
如果是双向链表,则除上面操作外,再让第二个链表的 prev指针指向第一个链表最后一个元素
更多追问追答
追问
有代码吗,不知道该怎么构建啊
追答
#include<stdio.h>
struct tagS{ tabS * next;}S;
int main()
{
    S* first;
    S* second;
    //.........//其它对链表first 和 second 的操作
    S*p = first;
    while(p->next) p = p->next; //使p定位到链表1的最后一个元素;
    p->next = second;  ///完成两个链表的合并。
   //   ……其它操作
   return 0;
};
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式