- 1、本文档共72页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6 动态链表 6.1 从静态数据结构到动态数据结构 6.2 动态内存分配(4个函数) 6.3 链 表 6.4 小 结 程序如下: int Listdelete ( LNode *L, int *e ) { LNode *q, *p; if ( !L ) return 0; p=L-next ; q=L; while ( p p-data != (*e) ) { q=p; p=p-next; } if ( p ) { q-next = p-next; (*e)=p-data; free(p); return ( 1 ); } else return(0); } * 6.4 小 结 本节介绍了线性链表的定义和建立算法,又介绍了插入一个结点、删除一个结点等算法的实现。通过这一章的学习,我们初步了解了动态数据结构的特点和使用方式。 还有许多的动态数据结构,如堆栈、队列、树、图等。它们都被广泛的应用于计算机系统中,在计算的系统和应用软件中起着非常重要的作用。动态数据结构的更详细内容将在后续课程《数据结构》中讲述。 * 关于链表的完整程序: #include malloc.h #include stdio.h #include stdlib.h typedef struct LNode{ int data; struct LNode *next; }LNode,*LinkList; * 建立链表: void CreateList ( LinkList L, int n ) { int i; LNode *p; printf(现在建立链表:\n); for( i=n; i0;i--) { printf(请输入第%d个结点的元素值:\n,i); p=(LNode*)malloc(sizeof(LNode)); if (!p) exit (0); scanf(%d, p-data); p-next = L-next ; L-next = p ; } } * 插入结点: void ListInsert(LNode *L, int e ) { LNode *s,*q, *p; if ( !L ) exit(0); s = ( LNode* ) malloc ( sizeof ( LNode )); if ( !s ) exit ( 0 ); s-data = e; p=L-next ; q=L; while ( p p-datae ) { q=p; p=p-next; } s-next = p; q-next = s; } * 删除结点: int Listdelete ( LNode *L, int *e ) { LNode *q, *p; if ( !L) return 0; p=L-next ; q=L; while ( p p-data != (*e) ) { q=p; p=p-next; } if ( p ) { q-next = p-next; (*e)=p-data; free(p); return ( 1 ); } else return(0); } * 主函数: void main(){ LNode *L, *p; int n; int x; printf(请输入链表中的元素个数:); scanf(%d,n); printf(现在建立链表的头结点:\n); L = (LNode*) malloc( sizeof ( LNode ) ); if ( !L ) exit ( 0); L-next = NULL; printf(现在开始建立链表:\n); CreateList( L, n); printf(链表建立结束,开始输出链表中的元素值!\n); for(p=L;p;p=p-next) { if(p==L) printf(头结点的地址值:%u , p); else printf(当前结点的地址值:%u , p); printf(\tp-
您可能关注的文档
- 第17课 电脑日常维护和优化.ppt
- CorelDRAW入门节-14 文字传说-文字工具.ppt
- 第17课维护和优化.ppt
- 第18讲 建立并使用帮助文件 - 中国工控网.ppt
- 第18节 建立并使用帮助文件.ppt
- CorelDRAW入门篇-21交互式变形及封套效果.ppt
- 第18节音乐播放1——小程序.ppt
- CorelDRAW图形设计基础第3节.ppt
- cortex-m3显示汉字及图片.pdf
- 第18章 微机硬件的维护和优化.ppt
- wipo-2022年技术与创新支持中心和技术转让办公室报告 - 加强地方创新能力以加速知识和技术转让.docx
- 中文大模型基准测评2024年10月报告-2024年度中文大模型阶段性进展评估.docx
- 2024年三季度宏观经济分析报告.docx
- 【深交所】红日药业:2024年一季度报告.docx
- Acc智能制造与卓越运营业务体系设计咨询方案.docx
- 第六代固定通信网(F6G)白皮书V2.0——天地一体化光通信技术.docx
- 提升效益 持盈保泰-摩根大通2024年中国运营资金指数报告-摩根大通.docx
- 新时代低空休闲发展研究-中国旅游协会休闲度假分会.docx
- 标普信评 -保障房怎么搞?--新加坡模式的借鉴与启发 202409.docx
- 标普信评 -一文看懂电力行业信用趋势:风光发电杠杆或持续上升 202409.docx
文档评论(0)