第4周实践项目-- 单链表应用(2)

来源:互联网 发布:.win域名 编辑:程序博客网 时间:2024/06/05 15:03
01./*       02.Copyright (c)2015,烟台大学计算机与控制工程学院       03.All rights reserved.       04.文件名称:项目3--单链表应用(2).cpp       05.作    者:刘魏乐天      06.完成日期:2015年11月2日       07.版 本 号:v1.0       08.       09.问题描述:2、已知L1和L2分别指向两个单链表的头结点,且已知其长度分别为m、n, 10.          请设计算法将L2连接到L1的后面。实现这个算法,完成测试,并分析这个算法的复杂度。 11.输入描述:若干数据 。     12.程序输出:链表合并后的数据。  13.*/  


算法库代码

01.int main()  02.{  03.    LinkList *A, *B;  04.    int i;  05.    ElemType a[]= {1,3,2,9};  06.    ElemType b[]= {0,4,7,6,5,8};  07.    InitList(A);  08.    for(i=3; i>=0; i--)  09.        ListInsert(A, 1, a[i]);  10.    InitList(B);  11.    for(i=5; i>=0; i--)  12.        ListInsert(B, 1, b[i]);  13.    Link(A, B);  14.    printf("A:");  15.    DispList(A);  16.    DestroyList(A);  17.    return 0;  18.}  19.  20.  21.void Link(LinkList*& l,LinkList *&m)  22.{  23.    LinkList *p;  24.    p=l;  25.    while(p->next!=NULL)  26.    {  27.        p=p->next;  28.    }  29.    p->next=m->next;  30.    free(m);  31.}  


知识点总结:

链表的合并。
学习心得:

对于链表的合并需要知道第二个链表的头指针是不需要的,需要释放掉。

 

0 0
原创粉丝点击