2022年数据结构习题解析与实训整理 .pdf

上传人:Q****o 文档编号:25942420 上传时间:2022-07-14 格式:PDF 页数:25 大小:404.48KB
返回 下载 相关 举报
2022年数据结构习题解析与实训整理 .pdf_第1页
第1页 / 共25页
2022年数据结构习题解析与实训整理 .pdf_第2页
第2页 / 共25页
点击查看更多>>
资源描述

《2022年数据结构习题解析与实训整理 .pdf》由会员分享,可在线阅读,更多相关《2022年数据结构习题解析与实训整理 .pdf(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第 3 章 链式存储结构链式存储结构是存放数据的另一种重要方式。通常将链式存储的线性表称为链表。链式存储结构相对于顺序存储结构的最大的不同有两点,一是数据的逻辑结构和物理存储位置相互独立 ,逻辑关系上相邻的元素物理位置上不一定是相邻的。二是数据元素所需的存储空间可动态分配。这一章的习题重点是单链表的各种建立算法及在单链表上的常见操作的程序实现。单链表的数据结构如下所示。#defineDATATYPE2chartypedefstructnodeDATATYPE2data;structnodenext;LINKLIST;说明:单链表中元素结点的数据域为data,类型设定为字符 ,结点的指针域为 n

2、ext。3.1习题解析【习题 1】建立单链表 (1)题目要求 :将用户输入的数据按头插入法建立一个不带头结点的单链表。输入结点数据时以输入一串字符的方式实现,字符为结束输入字符。【解答】#includedatastru.h#include#includeintcount_nohead(LINKLIST head)/不带头结点的单链表:输出单链表元素值并计数/名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 25 页 - - - - - - - - - l22数据结构习题解析

3、与实训inti=0;LINKLIST p;p=head;printf(输出单链表元素值 : );while(p!=NULL)printf(%c ,p-data);i+;p=p-next;printf(n);returni;LINKLIST creatlink_nohead_head(LINKLIST head)/用头插入法建立不带头结点的单链表/LINKLIST t;charch;printf(单链表元素值为单个字符,连续输入 ,以为结束字符 : );while(ch=getchar()!=)=(LINKLIST)malloc(sizeof(LINKLIST);t-data=ch;t-next

4、=head;head=t;return(head);main()INKLIST head=NULL;intnum;printf(n建立单链表n);head=creatlink_nohead_head(head);fflush(stdin);num=count_nohead(head);printf(单链表元素个数n,num);【习题 2】建立单链表 (2)题目要求 :将用户输入的数据按头插入法建立一个带头结点的单链表。输入数据方式同上题。【解答】#includedatastru.h#include#include名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - -

5、- - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 25 页 - - - - - - - - - 第3章链式存储结构l23intcount_head(LINKLIST head)/带头结点的单链表:输出单链表元素值并计数/inti=0;LINKLIST p;p=head-next;printf(输出单链表元素值 : );while(p!=NULL)printf(%c ,p-data);i+;p=p-next;printf(n);returni;LINKLIST creatlink_head_head(LINKLIST head)/用头插入法建立带头结点的单

6、链表/LINKLIST t;charch;t=(LINKLIST )malloc(sizeof(LINKLIST);head=t;t-next=NULL;printf(单链表元素值为单个字符,连续输入 ,为结束字符 : );while(ch=getchar()!=)t=(LINKLIST)malloc(sizeof(LINKLIST);t-data=ch;t-next=head-next;head-next=t;return(head);main()INKLIST head=NULL;intnum;printf(n建立单链表n);head=creatlink_head_head(head);f

7、flush(stdin);num=count_head(head);printf(单链表元素个数n,num);【习题 3】建立单链表 (3)题目要求 :将用户输入的数据按尾插入法建立一个不带头结点的单链表。输入数据名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 25 页 - - - - - - - - - l24数据结构习题解析与实训方式同上题。【解答】#includedatastru.h#include#includeintcount_nohead(LINKLIST h

8、ead)/不带头结点的单链表:输出单链表元素值并计数/inti=0;LINKLIST p;p=head;printf(输出单链表元素值 : );while(p!=NULL)i+;printf(%c ,p-data);p=p-next;printf(n);returni;LINKLIST creatlink_nohead_rail(LINKLIST head)/用尾插入法建立不带头结点的单链表/LINKLIST last,t;charch;last=head;printf(单链表元素值为单个字符,连续输入 ,以为结束字符 : );while(ch=getchar()!=)=(LINKLIST)m

9、alloc(sizeof(LINKLIST);t-data=ch;t-next=NULL;if(head=NULL)head=t;last=t;elselast-next=t;last=t;return(head);main()LINKLIST head=NULL;intnum;printf(n建立单链表n);名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 25 页 - - - - - - - - - 第3章链式存储结构l25head=creatlink_nohead_r

10、ail(head);fflush(stdin);num=count_nohead(head);printf(单链表元素个数n,num);【习题 4】建立单链表 (4)题目要求 :将用户输入的数据按尾插入法建立一个带头结点的单链表。输入数据方式同上题。【解答】#includedatastru.h#include#includeintcount_head(LINKLIST head)/带头结点的单链表:输出单链表元素值并计数/inti=0;LINKLIST p;p=head-next;printf(输出单链表元素值 : );while(p!=NULL)i+;printf(%c ,p-data);p

11、=p-next;printf(n );returni;LINKLIST creatlink_head_rail(LINKLIST head)/用尾插入法建立带头结点的单链表/LINKLIST last,t;charch;t=(LINKLIST )malloc(sizeof(LINKLIST);head=t;last=t;t-next=NULL;printf(单链表元素值为单个字符,连续输入 ,以为结束字符 : );while(ch=getchar()!=)=(LINKLIST)malloc(sizeof(LINKLIST);t-data=ch;t-next=NULL;last-next=t;l

12、ast=t;return(head);名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 25 页 - - - - - - - - - l26数据结构习题解析与实训main()LINKLIST head=NULL;intnum;printf(n建立单链表n);head=creatlink_head_rail(head);fflush(stdin);num=count_head(head);printf(单链表元素个数为n,num);【习题 5】逆置单链表题目要求 :按头插入法

13、建立一个不带头结点的单链表,用最少的辅助空间实现单链表元素的逆置。【解答】#includedatastru.h#include#includeLINKLIST invertlink(LINKLISThead)/单链表元素逆置/LINKLIST p,q,r;q=NULL;p=head;while(p!=NULL)r=q;q=p;p=p-next;q-next=r;returnq;intcount_nohead(LINKLIST head)/不带头结点的单链表:输出单链表元素值并计数/inti=0;LINKLIST p;p=head;printf(输出单链表元素值 : );while(p!=NUL

14、L)printf(%c ,p-data);i+;p=p-next;printf(n);returni;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 25 页 - - - - - - - - - 第3章链式存储结构l27LINKLIST creatlink_nohead_head(LINKLIST head)/用头插入法建立不带头结点的单链表/LINKLIST t;charch;printf(单链表元素值为单个字符,连续输入 ,以为结束字符 : );while(ch=ge

15、tchar()!=)=(LINKLIST)malloc(sizeof(LINKLIST);t-data=ch;t-next=head;head=t;return(head);main()LINKLIST head=NULL;intnum;printf(n建立单链表n);head=creatlink_nohead_head(head);fflush(stdin);num=count_nohead(head);printf(单链表元素个数为n,num);printf(n逆置单链表n);head=invertlink(head);num=count_nohead(head);【习题 6】有序链表插入

16、元素题目要求 :建立一个带头结点的单链表,表中元素从小到大有序排列。输入一个元素并将其插入到单链表中正确的位置上。【解答】#includedatastru.h#include#includeinser_order(DATATYPE2x,LINKLISThead)/将给定值 x插入有序表中 ,并保持有序 /LINKLIST pr,pn,pp;pr=head;pn=head-next;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 25 页 - - - - - - - - -

17、 l28数据结构习题解析与实训while(pn!=NULL&pn-datanext;pp=(LINKLIST )malloc(sizeof(LINKLIST);pp-data=x;pp-next=pr-next;pr-next=pp;intcount_head(LINKLIST head)/带头结点的单链表:输出单链表元素值并计数/inti=0;LINKLIST p;p=head-next;printf(输出单链表元素值 : );while(p!=NULL)printf(%c ,p-data);i+;p=p-next;printf(n);returni;LINKLIST creatlink_o

18、rder_head(LINKLIST head)/建立带头结点的有序单链表/INKLIST t,p,q;charch;t=(LINKLIST )malloc(sizeof(LINKLIST);head=t;t-next=NULL;printf(单链表元素值为单个字符,连续输入 ,以为结束字符 : );while(ch=getchar()!=)=(LINKLIST)malloc(sizeof(LINKLIST);t-data=ch;q=head;p=head-next;while(p!=NULL&p-datanext;q-next=t;t-next=p;return(head);main()IN

19、KLIST head=NULL;intnum;charch;printf(n建立单链表n);head=creatlink_order_head(head);名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 25 页 - - - - - - - - - 第3章链式存储结构l29fflush(stdin);num=count_head(head);printf(单链表元素个数n,num);printf(n输入插入元素值 : );ch=getchar();inser_order(

20、ch,head);printf(n元素插入后n);num=count_head(head);printf(插入后单链表元素个数n,num);【习题 7】有序链表删除重复元素题目要求 :建立一个带头结点的单链表,表中元素递增有序。删除表中值相同的多余元素 (即重复元素只保留一个 )。【解答】#includedatastru.h#include#includevoiddelete(LINKLIST a)/在有序链表中删除重复元素,保留一个 /LINKLIST la;la=a-next;while(la!=NULL&la-next!=NULL)if(la-data=la-next-data)la-n

21、ext=la-next-next;elsela=la-next;intcount_head(LINKLIST head)/带头结点的单链表:输出单链表元素值并计数/inti=0;LINKLIST p;p=head-next;printf(输出单链表元素值 : );while(p!=NULL)i+;printf(%c ,p-data);p=p-next;printf( n);returni;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 25 页 - - - - - - -

22、 - - l30数据结构习题解析与实训LINKLIST creatlink_order_head(LINKLIST head)/建立带头结点的有序单链表/INKLIST t,p,q;charch;t=(LINKLIST )malloc(sizeof(LINKLIST);head=t;t-next=NULL;printf(单链表元素值为单个字符,连续输入 ,以为结束字符 : );while(ch=getchar()!=)=(LINKLIST)malloc(sizeof(LINKLIST);t-data=ch;q=head;p=head-next;while(p!=NULL&p-datanext;

23、q-next=t;t-next=p;return(head);main()LINKLIST head=NULL;intnum;printf(n建立单链表n);head=creatlink_order_head(head);fflush(stdin);num=count_head(head);printf(n删除重复元素后n);delete(head);num=count_head(head);【习题 8】无序链表删除重复元素题目要求 :建立一个带头结点的单链表,元素按输入的次序排列。删除表中值相同的多余元素 (即重复元素只保留一个 )。希望读者能清楚理解在有序链表上删除重复元素的算法和在无序链

24、表上删除重复元素的算法的思路不同。【解答】#includedatastru.h#include#includevoiddelete(LINKLIST a)/在无序单链表中删除重复元素,只保留一个 /名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 25 页 - - - - - - - - - 第3章链式存储结构l31LINKLIST la,p,q;la=a-next;while(la!=NULL)q=la;p=la-next;while(p!=NULL)f(p-data=

25、la-data)p=p-next;q-next=p;elseq=p;p=p-next;la=la-next;intcount_head(LINKLIST head)/输出带头结点的单链表元素值并计数/inti=0;LINKLIST p;p=head-next;printf(输出单链表元素值 : );while(p!=NULL)i+;printf(%c ,p-data);p=p-next;printf(n);returni;LINKLIST creatlink_head_rail(LINKLIST head)/用尾插入法建立带头结点的单链表/LINKLIST last,t;charch;t=(L

26、INKLIST )malloc(sizeof(LINKLIST);head=t;last=t;t-next=NULL;printf(单链表元素值为单个字符,连续输入 ,为结束字符 : );while(ch=getchar()!=)=(LINKLIST)malloc(sizeof(LINKLIST);t-data=ch;t-next=NULL;last-next=t;last=t;return(head);main()名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 25

27、页 - - - - - - - - - l32数据结构习题解析与实训LINKLIST head=NULL;intnum;printf(n建立单链表n);head=creatlink_head_rail(head);fflush(stdin);num=count_head(head);printf(n删除重复元素后n);delete(head);num=count_head(head);【习题 9】两链表合并题目要求 :建立两个带头结点的单链表a1和a2,元素均递增有序。将两单链表归并成新的单链表 c,c中元素也递增有序 ,相同值的元素均保留在 c中。【解答】#includedatastru.h

28、#include#includevoidunite(LINKLIST a,LINKLIST b,LINKLIST c)/两有序链表 a,b合并到一新链表 c中,c表中元素值也有序/LINKLIST la,lb,lc,p;la=a-next;lb=b-next;lc=c;while(la!=NULL&lb!=NULL)f(la-datadata)p=(LINKLIST)malloc(sizeof(LINKLIST);p-data=la-data;p-next=NULL;lc-next=p;lc=lc-next;la=la-next;elsep=(LINKLIST)malloc(sizeof(LI

29、NKLIST);p-data=lb-data;p-next=NULL;lc-next=p;lc=lc-next;lb=lb-next;while(la!=NULL)p=(LINKLIST)malloc(sizeof(LINKLIST);p-data=la-data;p-next=NULL;lc-next=p;lc=lc-next;la=la-next;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 25 页 - - - - - - - - - 第3章链式存储结构l33w

30、hile(lb!=NULL)p=(LINKLIST)malloc(sizeof(LINKLIST);p-data=lb-data;p-next=NULL;lc-next=p;lc=lc-next;lb=lb-next;intcount_head(LINKLIST head)/带头结点的单链表:输出单链表元素值并计数/inti=0;LINKLIST p;p=head-next;printf(输出单链表元素值 : );while(p!=NULL)i+;printf(%c ,p-data);p=p-next;printf(n);returni;LINKLIST creatlink_order_hea

31、d(LINKLIST head)/建立带头结点的元素值有序的单链表/INKLIST t,p,q;charch;t=(LINKLIST )malloc(sizeof(LINKLIST);head=t;t-next=NULL;printf(单链表元素值为单个字符,连续输入 ,以为结束字符 : );while(ch=getchar()!=)=(LINKLIST)malloc(sizeof(LINKLIST);t-data=ch;q=head;p=head-next;while(p!=NULL&p-datanext;q-next=t;t-next=p;return(head);main()LINKLI

32、ST a1=NULL, a2=NULL, c;intnum;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 25 页 - - - - - - - - - l34数据结构习题解析与实训printf(n建立单链表n);a1=creatlink_order_head(a1);fflush(stdin);num=count_head(a1);printf(单链表 a1元素个数n,num);printf(n建立单链表n);a2=creatlink_order_head(a2);f

33、flush(stdin);num=count_head(a2);printf(单链表 a2元素个数n,num);c=(LINKLIST )malloc(sizeof(LINKLIST);c-next=NULL;unite(a1,a2,c);printf(nn合并到单链表 c中 n);num=count_head(c);printf(单链表 c元素个数n,num);【习题 10】两链表并集题目要求 :第2章中介绍了顺序表并集运算的习题。集合的存储形式也可采用链表,集合中元素的类型设为字符。此题即按用户输入的数据建立两个集合a1和a2,同一集合中无重复元素 ,以带头结点的单链表形式存放。对两集合进

34、行并集运算(a1a2),结果放在 a1表中。算法的思路同顺序表并集的算法。图31是单链表存放的两集合进行并集运算 (a1a2)的过程。图3.1单链表存放的两集合进行并集运算(a1a2)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 25 页 - - - - - - - - - 第3章链式存储结构l35【解答】#includedatastru.h#include#includeintlocate(LINKLIST a,charx)/检查元素 x是否在 a表中 /LINKL

35、IST la;la=a-next;while(la!=NULL)if(la-data=x)return1;elsela=la-next;return0;insert(LINKLIST a,charx)/将x元素加入 a表中 /LINKLIST p;p=(LINKLIST )malloc(sizeof(LINKLIST);p-data=x;p-next=a-next;a-next=p;voidunionn(LINKLIST a1,LINKLIST b1)/两链表并集 /LINKLIST lb;lb=b1-next;while(lb!=NULL)f(!locate(a1,lb-data)/如果 b

36、1表中的一个元素不在a1表中 /insert(a1,lb-data);/则将 b1表中的该元素加入 a1表中 /lb=lb-next;intcount_head(LINKLIST head)/带头结点的单链表:输出单链表元素值并计数/inti=0;LINKLIST p;p=head-next;printf(输出单链表元素值 : );名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 25 页 - - - - - - - - - l36数据结构习题解析与实训while(p!=

37、NULL)printf(%c ,p-data);i+;p=p-next;printf(n);returni;LINKLIST creatlink_head_rail(LINKLIST head)/用尾插入法建立带头结点的单链表/LINKLIST last,t;charch;t=(LINKLIST )malloc(sizeof(LINKLIST);head=t;last=t;t-next=NULL;printf(单链表元素值为单个字符,连续输入 ,以为结束字符 : );while(ch=getchar()!=)=(LINKLIST)malloc(sizeof(LINKLIST);t-data=c

38、h;t-next=NULL;last-next=t;last=t;return(head);main()INKLIST a1,a2;intnum;printf(n建立单链表n);a1=NULL;a1=creatlink_head_rail(a1);fflush(stdin);num=count_head(a1);printf(n建立单链表n);a2=NULL;a2=creatlink_head_rail(a2);fflush(stdin);num=count_head(a2);printf(nn两链表并集运算 ,结果保留在 a1中n);unionn(a1,a2);num=count_head(

39、a1);【习题 11】单链表 (综合练习 )这是一个将上面的各个单链表的习题合并为一个综合程序中的练习,这样不少函数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 25 页 - - - - - - - - - 第3章链式存储结构l37可共享被调用 ,读者可通过菜单选择方式运行单链表的各种操作。程序中菜单选择方式运行如图 32所示。图3.2单链表综合习题菜单选择方式显示【解答】#includedatastru.h#include#includeintlocate(LINK

40、LIST a,charx)/检查元素 x是否在 a表中 /LINKLIST la;la=a-next;while(la!=NULL)if(la-data=x)return1;elsela=la-next;return0;insert(LINKLIST a,charx)/将x元素加入表 a中/LINKLIST p;p=(LINKLIST )malloc(sizeof(LINKLIST);p-data=x;p-next=a-next;a-next=p;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - -

41、- - 第 17 页,共 25 页 - - - - - - - - - l38数据结构习题解析与实训voidunionn(LINKLIST a1,LINKLIST b1)/两链表并集 /LINKLIST lb;lb=b1-next;while(lb!=NULL)f(!locate(a1,lb-data)/如果 b1表中的一个元素不在a1表中 /insert(a1,lb-data);/则将 b1表中的该元素加入 a1表中 /lb=lb-next;voidunite(LINKLIST a,LINKLIST b,LINKLIST c)/a,b为两有序链表 ,合并到 c表,并保持有序 /LINKLIS

42、T la,lb,lc,p;la=a-next;lb=b-next;lc=c;while(la!=NULL&lb!=NULL)f(la-datadata)p=(LINKLIST)malloc(sizeof(LINKLIST);p-data=la-data;p-next=NULL;lc-next=p;lc=lc-next;la=la-next;elsep=(LINKLIST)malloc(sizeof(LINKLIST);p-data=lb-data;p-next=NULL;lc-next=p;lc=lc-next;lb=lb-next;while(la!=NULL)p=(LINKLIST)mal

43、loc(sizeof(LINKLIST);p-data=la-data;p-next=NULL;lc-next=p;lc=lc-next;la=la-next;while(lb!=NULL)p=(LINKLIST)malloc(sizeof(LINKLIST);p-data=lb-data;p-next=NULL;lc-next=p;lc=lc-next;lb=lb-next;voiddelete1(LINKLIST a)/无序链表中删除重复元素,即重复元素只保留一个/名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理

44、 - - - - - - - 第 18 页,共 25 页 - - - - - - - - - 第3章链式存储结构l39LINKLIST la,p,q;la=a-next;while(la!=NULL)q=la;p=la-next;while(p!=NULL)f(p-data=la-data)p=p-next;q-next=p;elseq=p;p=p-next;la=la-next;voiddelete(LINKLIST a)/有序链表中删除重复元素,重复元素只保留一个/LINKLIST la;la=a-next;while(la!=NULL&la-next!=NULL)if(a-data=la

45、-next-data)la-next=la-next-next;elsela=la-next;inser_order(DATATYPE2x,LINKLISThead)/有序表中插入元素x,并保持表有序 /LINKLIST pr,pn,pp;pr=head;pn=head-next;while(pn!=NULL&pn-datanext;pp=(LINKLIST )malloc(sizeof(LINKLIST);pp-data=x;pp-next=pr-next;pr-next=pp;LINKLIST invertlink(LINKLISThead)/将单链表元素逆置/LINKLIST p,q,r

46、;q=NULL;p=head;while(p!=NULL)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 25 页 - - - - - - - - - l40数据结构习题解析与实训r=q;q=p;p=p-next;q-next=r;returnq;intcount_nohead(LINKLIST head)/输出不带头结点的单链表元素值并计数/inti=0;LINKLIST p;p=head;printf(输出单链表元素值 : );while(p!=NULL)print

47、f(%c ,p-data);i+;p=p-next;printf(n);returni;intcount_head(LINKLIST head)/输出带头结点的单链表元素值并计数/inti=0;LINKLIST p;p=head-next;printf( 输出单链表元素值 : );while(p!=NULL)printf(%c ,p-data);i+;p=p-next;printf(n);returni;LINKLIST creatlink_nohead_head(LINKLIST head)/用头插入法建立不带头结点的单链表/LINKLIST t;charch;printf(单链表元素值为单

48、个字符,连续输入 ,以为结束字符 : );while(ch=getchar()!=)=(LINKLIST)malloc(sizeof(LINKLIST);t-data=ch;t-next=head;head=t;return(head);LINKLIST creatlink_head_head(LINKLIST head)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 25 页 - - - - - - - - - 第3章链式存储结构l41/用头插入法建立带头结点的单链表

49、/LINKLIST t;charch;t=(LINKLIST )malloc(sizeof(LINKLIST);head=t;t-next=NULL;printf(单链表元素值为单个字符,连续输入 ,以为结束字符 : );while(ch=getchar()!=)=(LINKLIST)malloc(sizeof(LINKLIST);t-data=ch;t-next=head-next;head-next=t;return(head);LINKLIST creatlink_nohead_rail(LINKLIST head)/用尾插入法建立不带头结点的单链表/LINKLIST last,t;ch

50、arch;last=head;printf(单链表元素值为单个字符,连续输入 ,以为结束字符 : );while(ch=getchar()!=)=(LINKLIST)malloc(sizeof(LINKLIST);t-data=ch;t-next=NULL;if(head=NULL)head=t;last=t;elselast-next=t;last=t;return(head);LINKLIST creatlink_head_rail(LINKLIST head)/用尾插入法建立带头结点的单链表/LINKLIST last,t;charch;t=(LINKLIST )malloc(sizeo

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁