您当前的位置:首页 > 计算机 > 编程开发 > C语言

将两个循环单链表连接成一个循环链表

时间:01-03来源:作者:点击数:

问题描述:

有两个循环单链表,链表头指针分别为h1和h2,编写一个函数将链表h2链接到链表h1之后,要求链接后的链表仍保持循环链表形式。

问题解答:

算法思想:先找到两个链表的尾指针,将第一个链表的尾指针与第二个链表的头结点链接起来,再使之成为循环的。

LinkList Link(LinkList &h1,LinkList &h2){
    //将循环链表h2链接到循环链表h1之后,使之仍保持循环链表的形式
    LNode *p, *q;  //分别指向两个链表的尾结点
    p=h1;
    while (p->next!=h1)  //寻找 h1 的尾结点
        p=p->next;
    q=h2;
    while (q->next!=h2)  //寻找 h2 的尾结点
        q=q->next;
    p->next=h2;    //将h2链接到h1之后
    q->next=h1;    //令h2的尾结点指向h1
    return h1;
}

 

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门