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

最近更新

黄陂区耕地质量研究 3页

2025年(实用)大学学生会工作总结 31页

黄连温胆汤合升降散加减治疗2型糖尿病伴胰岛素.. 3页

材料采购成本控制情况报告 5页

黄牛鞋面革浸酸工艺控制要点 3页

2025年(合集)实用的中学生演讲稿7篇 10页

黄山市TD-SCDMA网络的规划设计的研究的任务书.. 3页

黄土高原东北缘全新世暖期气候变化的石笋记录.. 3页

木材产品推广策划书3 7页

服装营销策划的设计方案5 32页

鹧鸪茶提取物对鲢鱼鱼糜制品保鲜作用的研究 4页

跨国健身品牌国际化路径-深度研究 40页

月子会所项目方案商业计划书共51 28页

2025年宝洁公司飘柔洗发水在中国市场营销策划.. 44页

最新沈阳建筑大学毕业论文设计完整框架优秀漂.. 5页

高黏改性沥青高温黏弹特性指标区分度分析 3页

高频覆铜板用聚苯醚改性环氧树脂复合材料的制.. 3页

最新五一劳动节心情说说文案2025 4页

2025年(优秀)小学数学教案 26页

曲阜师范大学2025年毕业论文格式 5页

智能餐厅创新创业项目计划书 33页

2025年网络建设调研报告(共6篇)-大文斗范文.. 56页

智能穿戴设备在健康领域的应用 27页

大学食堂投标书样本 11页

PEP小学英语六年级下册教学工作计划2 3页

【10篇】部编三年级上册语文课内外阅读理解专.. 10页

2025年选品所在的行业分析报告模板 23页

设备检修记录表模板 2页

(完整版)麻疹试题(含答案) 4页

人美版三年级美术下册教学计划(精) 2页