两个循环链表的合并

 循环链表通常用尾指针表示整个链表(用头指针的话找an必须从头开始找,时间复杂度为O(n))

 合并链表1和链表2:

  1. 让an结点的指针域指向b1
  2. 删去链表2的头结点
  3. 让bn结点的指针域指向链表1的头结点(在第1步前需用临时变量p保存链表1的头结点)

使之变成

 也就是

LinkList Connection(LinkList r1,LinkList r2){
    Node *p;
    p=r1->next;
    r1->next=r2->next->next;
    delete r2->next;
    r1->next=p;
    return r2;
}

 

©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页