数据结构线性表链表的C语言实现.pdf

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构线性表链表的C语言实现

数据结构线性表链表的C语言实现 说明:线性表是一种最简单的线性结构,也是最基本的一种线性 结构,所以它不仅是学习中的重点,也是应用开发非常常用的一种 据结构。它可以分为顺序表和链表。它的主要操作是数据元素的插入, 删除,以及排序等。接下来,本篇文章将对线性表链表的基本操作和 运用进行详细的说明(包含在源代码的注释中),并给予可运行的程 序源代码。 线性表链表不同于顺序表,它是一种链式的线性表,和顺序表的 类似数组的存储特点不同,它是一个个独立的存储单元,中间用指针 链接,类似一条链子,所以叫链表。因为同属线性表所以它的基本操 作与顺序表是一致的,所以基本操作函数名相同但是具体实现方式不 同,顺序表的优点在于它可以随机存储数据元素,但在删除和插入操 作时需要移动大量元素。而链表则相反,它无法做到随机存取,但在 进行删除和插入操作时非常方便,仅需要修改下指针并释放被删除元 素的存储空间而已。 程序分析:由于抱着是程序执行起来时操作尽量简单化,使人一 看就能明白,所以本程序是用了不少的提示性语句。主函数的结构是 while循环和switch函数相结合的方法,使每种能够用到的基本操作 尽量明白的显示在主显示函数中,这样能使每种基本操作的作用效果 更加突出明了。这样不仅能使程序的模块化尽量明显,也可以让源代 码的可读性增强。而且程序运用了CLS清屏函 ,可以使每一次操作 的输入输出结果更加清晰。 源代码: #includestdio.h #includestdlib.h #includemalloc.h #define OK 1 #define ERROW -1 #defineOVERFLOW-2 #define LE sizeof(structLnode) #define L LNode* typedef int Status; typedef int ElemType; /*链表的结点的数据结构 */ typedefstructLnode { ElemTypenum; //为求简便数据域仅置一项 structLnode*next; }LNode,*LinkList; //*LinkList L 定义链表头指针 /*链表的初始构建函数*/ StatusInitList(LinkListL) { L=(LN)malloc(LEN); if(L==0) exit(OVERFLOW); L-next=NULL; returnOK; } /*链表的清空涵数*/ void ClearList(LinkListL) { LinkListp; while(L-next) { p=L-next; L-next=p-next; free(p); } // 最终效果是只保留头节点 } /*销毁函数*/ voidDestoryList(LinkListL) { ClearList(L); free(L);//释放头节点空间 L=NULL;//链表的变量归于初始值,便于识别和处理 } /*取表长函数*/ StatusGetLength(LinkListL) { intn; n=0; if(L==NULL)//未经初始构建函数构建或已经彻底销毁 returnn; while(L-next) { L=L-next; n++; } returnn; } /*判断表的空否的函数 */ StatusIsEmpty(LinkListL) { if(L-next==NULL) returnOK; else returnERROW; } /*定位取值函数*/ StatusGetElem(LinkListL,inti,ElemTypee) { intj=1; LinkListp; p=L-next; while(pji) { p=p-next; j++; } if(p==NULL||ji) //

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档