数据结构线性表应用.doc

数据结构线性表应用.doc

ID:49547629

大小:80.00 KB

页数:21页

时间:2020-03-02

数据结构线性表应用.doc_第1页
数据结构线性表应用.doc_第2页
数据结构线性表应用.doc_第3页
数据结构线性表应用.doc_第4页
数据结构线性表应用.doc_第5页
资源描述:

《数据结构线性表应用.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、.实验一线性表应用一.实验目的1、掌握用TurboC或VC++上机调试线性表的基本方法;2、掌握线性表的基本操作,如插入、删除、查找,以及线性表合并等运算在顺序存储结构和链式存储结构上的运算;并能够运用线性表基本操作解决问题,实现相应算法。二.实验学时:课内实验学时:2学时课外实验学时:4学时三.备选实验题目1.单链表基本操作练习(实验类型:验证型)1)问题描述:在主程序中设计一个简单的菜单,分别调用相应的函数功能:1…建立链表2…连接链表3…输出链表0…结束2)实验要求:在程序中定义下述函数,并实现所要求的函数功能:CreateLinklist():从键盘输入数据,创建一个单链表

2、ContLinklist():将前面建立的两个单链表首尾相连OutputLinklist():输出显示单链表3)实验提示:²单链表数据类型定义(C语言)#includetypedefintElemType;//元素类型typedefstructLNode{ElemTypedata;structLNode*next;}LNode,*LinkList;²为了算法实现简单,最好采用带头结点的单向链表。4)注意问题:²重点理解链式存储的特点及指针的含义。²注意比较顺序存储与链式存储的各自特点。范文..²注意比较带头结点、无头结点链表实现插入、删除算法时的区别。²单链表的操

3、作是数据结构的基础,一定要注意对这部分的常见算法的理解。1.顺序表基本操作练习(实验类型:验证型)1)问题描述:²从键盘输入一组整型元素序列,建立顺序表。²实现该顺序表的遍历。²在该顺序表中进行顺序查找某一元素,查找成功返回1,否则返回0。²判断该顺序表中元素是否对称,对称返回1,否则返回0。2)实验要求:²对应问题描述,在程序中定义4个相应的函数,实现上面要求的函数功能:²在主程序中设计一个简单的菜单,调用上述4个函数3)实验提示:²顺序表存储数据类型定义(C语言)#defineMAXSIZE100//表中元素的最大个数typedefintElemType;//元素类型typed

4、efstructlist{ElemTypeelem[MAXSIZE];//静态线性表intlength;//表的实际长度}SqList;//顺序表的类型名4)注意问题:²插入、删除时元素的移动原因、方向及先后顺序。²理解不同的函数形参与实参的传递关系。2.约瑟夫环问题(实验类型:综合型)1)问题描述:有编号为1,2…n的n个人按顺时针方向围坐一圈,每人持有一个正整数密码。开始给定一个正整数m,从第一个人按顺时针方向自1开始报数,报到m者出列,不再参加报数,这时将出列者的密码作为m,从出列者顺时针方向的下一人开始重新自1开始报数。如此下去,直到所有人都出列。试设计算法,输出出列者的序

5、列。2)实验要求:采用顺序和链式两种存储结构实现3)实现提示:²用顺序表来存储围座者的序号和密码(顺序存储结构).n用number和code分别表示围座者的序号和密码.假设围座者人数为j,当前使用密码为m,开始报数者位置为s,那么下一出列者位置为s=(s+m-1)modj.范文..n当我们要在线性表的顺序存储结构上的第i个位置上插入一个元素时,必须先将线性表的第i个元素之后的所有元素依次后移一个位置,以便腾空一个位置,再把新元素插入到该位置。若要删除第i个元素时,也必须把第i个元素之后的所有元素前移一个位置。²用链式存储解决此问题时可以采用循环链表.4)注意问题:²顺序存储和链式存

6、储实现此算法时计算出列位置的不同方法,人员出列后所做操作的区别。1.一元稀疏多项式简单的计算器(实验类型:综合型)1)问题描述:用线性表表示一元稀疏多项式,设计一个一元多项式运算器2)实验要求:²采用单链表存储结构一元稀疏多项式²输入并建立多项式²输出多项式²实现多项式加、减运算3)实现提示:以两个多项式相加为例²结果多项式另存²扫描两个相加多项式,若都未检测完:n若当前被检测项指数相等,系数相加,若结果未变成0,则将结果插入到结果多项式。n若当前被检测项指数不等,则将指数较小者插入到结果多项式。²若有一个多项式已检测完,则将另一个多项式剩余部分直接连接到结果多项式。2.长整数(任

7、意长度)四则运算演示程序(实验类型:综合型)1)问题描述:设计一个实现任意长的整数进行加法运算的演示程序2)实验要求:²利用双向循环链表实现长整数的存储,给各结点含一个整型变量。任何整型变量的的范围是-(215-1)~(215-1)。²输入和输出形式:按照中国对长整数的表示习惯,每四位一组,组间用逗号隔开。3)实现提示:²每个结点中可以存放的最大整数为215-1=32767,才能保证两数相加不会溢出。但若这样存,即相当于按32768进制数存,在十进制数与32768进制

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。