- 1、本文档共20页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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) //
您可能关注的文档
最近下载
- 基于51单片机的智能台灯设计.doc
- 幼儿园课件:小老鼠和泡泡糖最终.pptx
- 2024必威体育精装版国开《个人理财》形考题库.docx VIP
- 国家开放大学学前教育专业+毕业作业(幼儿园教学活动设计与指导)9.doc
- 第18课 从九一八事变到西安事变(课件).pptx VIP
- 酒店装配式装修技术规程.pdf VIP
- 2023年中国汉字听写大赛全部试题库及答案.pdf VIP
- 2024中国铁路成都局集团限公司招聘高校毕业生998人高频考题难、易错点模拟试题(共500题)附带答案详解.docx
- 人文英语3--An-absence-excuse-letter完整版.docx
- 神经工程学(天津大学)大学MOOC慕课 客观题答案.docx
文档评论(0)