zoukankan      html  css  js  c++  java
  • 循环链表将两个链表连成一个链表

    改用尾指针表示单循环链表,寻找头指针和尾指针很方便,快速。
    如果用头指针记录循环链表,寻找时间为Q(n)
    如果用尾指针记录循环链表,寻找头指针rear->next->next,查找时间Q(1)
     1 typedef int datetype;
     2 typedef struct node{
     3     datetype data;
     4     struct node *next;
     5 } linklist;
     6 linklist *head,*p;
     7 
     8 linklist *CONNECT(linklist *ra,linklist *rb){
     9     linklist *p;
    10     p=ra->next;               //保护好ra的头指针 
    11     ra->next=rb->next->next;  //第一个链表的尾指针只想第二次链表的头指针
    12     free(rb->next);           //释放第二个链表的头指针 
    13     rb->next=p;               //合并之后,第二个指针指向第一个链表的头指针
    14     return rb;                //返回新链表的的尾指针 
    15 }
    View Code
  • 相关阅读:
    【Intellij Idea】设置JDK
    MarkDown换行
    Git 查看/修改用户名、邮箱
    JavaScript对象
    Javascript事件
    第十次会议
    第九次会议
    详细设计文档
    第八次会议
    第七次会议
  • 原文地址:https://www.cnblogs.com/aijianiula/p/3094117.html
Copyright © 2011-2022 走看看