1 / 13
文档名称:

数据结构实验报告 单链表.doc

格式:doc   大小:93KB   页数:13页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构实验报告 单链表.doc

上传人:wxnt86 2019/11/24 文件大小:93 KB

下载得到文件列表

数据结构实验报告 单链表.doc

文档介绍

文档介绍:2016级数据结构实验报告实验名称:实验一线性表——题目1学生姓名:李文超班级:2015661131班内序号:15学号:2015522147日期:2016年11月13日实验要求实验目的:根据线性表的抽象数据类型的定义,选择下面任一种链式结构实现线性表,并完成线性表的基本功能。线性表存储结构(五选一):带头结点的单链表不带头结点的单链表循环链表双链表静态链表线性表的基本功能:构造:使用头插法、尾插法两种方法插入:要求建立的链表按照关键字从小到大有序删除查找获取链表长度销毁其他:可自行定义编写测试main()函数测试线性表的正确性。: (1)链表用一组任意的存储单元来存放线性表的结点。这组存储单元既可以是连续的,也可以是不连续的,甚至零散地分布在内存的某些位置。(2)链表中结点的逻辑次序和物理次序不一定相同。为了能正确表示结点间的逻辑关系,在存储每个元素值的同时,还要存储该元素的直接后继元素的位置信息,这个信息称为指针或链。结点结构 ┌──┬──┐data域---存放结点值的数据域 │data│next│next域---存放结点的直接后继的地址的指针域 └──┴──┘      单链表在内存中的存储示意地址内存单元a[3]1080H……a[1]10C0H……a[4]^……a[2]1000H……1000H头指针1020H1080H10C0Hfront ………… 、关键算法:(1)头插法自然语言描述:a:在堆中建立新结点b:将a[i]写入到新结点的数据域c:修改新结点的指针域d:修改头结点的指针域。将新结点加入链表中伪代码描述a:Node<T>*s=newNode<T>b:s->data=a[i]c:s->next=front->next;d:front->next=s(2)尾插法自然语言描述:a:在堆中建立新结点:b:将a[i]写入到新结点的数据域:c:将新结点加入到链表中d:修改修改尾指针伪代码描述a:Node<T>*s=newNode<T>b:s->data=a[i]c:r->next=s;d:r=s(3)遍历打印函数自然语言描述:a:判断该链表是否为空链表,如果是,报错b:如果不是空链表,新建立一个temp指针c:将temp指针指向头结点d:打印temp指针的data域e:逐个往后移动temp指针,直到temp指针的指向的指针的next域为空伪代码描述a:Iffront->next==NULLThrow”anemptylist”‚Node<T>*temp=front->next;b:while(temp->next)c:cout<<temp->data<<"";d:temp=temp->next;(4)获取链表长度函数自然语言描述:a:判断该链表是否为空链表,如果是,输出长度0b:如果不是空链表,新建立一个temp指针,初始化整形数n为0c:将temp指针指向头结点d:判断temp指针指向的结点的next域是否为空,如果不是,n加一,否则returnne:使temp指针逐个后移,重复d操作,直到temp指针指向的结点的next域为0,返回n伪代码描述a:ifront->next==NULLb:Node<T>*temp=front->next;c:while(temp->next)d:temp=temp->next;(5)析构/删除函数自然语言描述:a:新建立一个指针,指向头结点b:判断要释放的结点是否存在,c:暂时保存要释放的结点d:移动a中建立的指针e:释放要释放的指针伪代码描述a:Node<T>*p=frontb:while(p)c:front=pd:p=p->nexte:deletefront(6)按位查找函数自然语言描述:a:初始化工作指针p和计数器j,p指向第一个结点,j=1b:循环以下操作,直到p为空或者j等于1:p指向下一个结点‚:j加1c:若p为空,说明第i个元素不存在,抛出异常d:否则,说明p指向的元素就是所查找的元素,返回元素地址伪代码描述a:Node<T>*p=front->next;j=1;b:while(p&&j!=1):p=p->next‚:j++c:if(!p)throw”error”d:returnp(7)按位查找函数自然语言描述:a:初始化工作指针p和计数器j,p指向第一个结点,j=1b:循环以下操作,找到这个元素或者p指向最后一个结点:判断p指向的结点是不是要查找的值,如果是,返回j,否则p指向下一个结点,并且j的值加一c:如果找到最后一个结点还没有找到要查找的元素,返回查找失败信息伪代码描述a:Node<T>*p=front->next;j=1;b:while(p):if(p->next==x)returnjp=p->next

最近更新

2025年“倡文明、促和谐”校园Flash大赛策划书.. 7页

红黑树空间效率-洞察阐释 36页

智能任务调度策略-第1篇-洞察阐释 36页

铁路绿色能源技术进展-洞察阐释 33页

中考冲刺名师全面指导提分不是浮云 9页

农业文化体验教育模式-洞察阐释 33页

学生基本环境知识调查报告 5页

2023年高级育婴员考卷 33页

肝血管解剖专业知识宣讲 32页

创新教育下动物生理学实验教学改革的突破 22页

2024年云南省大理白族自治州单招职业倾向性测.. 46页

2024年佳木斯职业学院单招职业技能考试必刷测.. 56页

2024年兰州石化职业技术学院单招职业适应性测.. 56页

2024年内蒙古建筑职业技术学院单招职业倾向性.. 57页

2024年华东政法大学单招职业技能测试题库最新.. 44页

2024年南昌影视传播职业学院单招综合素质考试.. 55页

2024年台州学院单招职业倾向性考试必刷测试卷.. 57页

2024年吉林电子信息职业技术学院单招职业适应.. 56页

2024年大连装备制造职业技术学院单招职业倾向.. 55页

二零二五跨境贸易峰会黑白抽象纹理主题演讲模.. 22页

光伏运维合同范本大全 4页

贵州普通高等学校毕业生登记表 8页

伪基站应用及侦测系统介绍 68页

[中考化学必考知识点]初三化学必考知识点 24页

小机调节保安系统说明书 42页

物业公司员工考核细则 12页

错漏混料点检稽核表[空白模板] 1页

电力高压断路器CT26弹簧机构原理培训(附动作原.. 24页

马太福音二十章讲义 6页

《GB50089―2016 民用爆破器材工程设计安全规.. 61页