《算法与数据结构》

《算法与数据结构》

ID:34200656

大小:87.00 KB

页数:10页

时间:2019-03-04

《算法与数据结构》_第1页
《算法与数据结构》_第2页
《算法与数据结构》_第3页
《算法与数据结构》_第4页
《算法与数据结构》_第5页
资源描述:

《《算法与数据结构》》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、--《算法与数据结构》实验报告学院专业姓名学号实验1:线性表的操作(12学时)[问题描述]假设一个班级内有n个学生,定义一个学生类和一个班级类。学生类中包括学号、姓名、性别、年龄、专业等属性;班级类包括一个学生对象链表。定义如下:classStudent{intid;//学号charname[20];//姓名intage;//年龄//请设置学生类中相应的操作}classMyClass{Student*stu_head;//链表表头指针inttotal;//学生总数charmanager[20];//班主任姓名//.....public:MyCl

2、ass()//创建新班,学生数为0voidinsertStu(Students);//在班内中插入学生s,插入后保持学号没有重复并且按学号递增voiddeleteStu(inti);//删除学号为i的学生voiddisplay();//显示班内所有学生的信息和其它信息voidsearch(inti);//按照学号i查找学生,并输出其信息voidsearch(char*s);//按照姓名查找学生,如果有重名的学生,则输出所有学生voidjoin(MyClass&class2);//将class2班合并到本班,合并后保证学号没有重复并且按学号递增v

3、oidseperate(MyClass&c1,MyClass&c2);//按照性别分成两个班c1和c2//其它方法----}[实验目的](1)掌握链表的基本操作。(2)熟练类的定义以及类之间的关系[实验内容及要求](1)实现MyClass类中所列出的方法;(2)编写主函数测试类中的方法。《算法与数据结构》实验报告学院专业姓名学号实验2:利用栈将中缀表达式转换为后缀表达式并进行计算(3学时)[问题描述]中缀表达式是最普通的一种书写表达式的方式,而后缀表达式不需要用括号来表示,计算机可简化对后缀表达式的计算过程,而该过程又是栈的一个典型应用。[实验

4、目的](1)深入理解栈的特性。(2)掌握栈结构的构造方法。[实验内容及要求](1)中缀表达式中只包含+、-、×、/运算及(和)。(2)可以输入任意中缀表达式,数据为一位整数。(3)显示中缀表达式及转换后的后缀表达式(为清楚起见,要求每输出一个数据用逗号隔开)。----(1)对转换后的后缀表达式进行计算。例如输入:中缀表达式:6+3*(9-7)-8/2输出:转换后的后缀表达式为:6,3,9,7,-,*,+,8,2,-计算结果为:8《算法与数据结构》实验报告学院专业姓名学号实验3:行编辑程序问题(3学时)[问题描述]一个简单的行编辑程序的功能是:接

5、受用户从终端输入的程序或数据,并存入用户的数据区。由于用户在终端上进行输入时,不能保证不出差错,因此,若在编辑程序中,“每接受一个字符即存入用户数据区”的做法显然不是最恰当的。较好的做法是,设立一个输入缓冲区,用以接受用户输入的一行字符,然后逐行存入用户数据区。允许用户输入出差错,并在发现有误时可以及时更正。例如,当用户发现刚刚键入的一个字符是错的时,可补进一个退格符"#",以表示前一个字符无效; 如果发现当前键入的行内差错较多或难以补救,则可以键入一个退行符"@",以表示当前行中的字符均无效。 如果已经在行首继续输入'#'符号无效。[实验目的

6、](1)深入理解栈的特性。(2)掌握使用递归实现某些问题。(3)设计出应用栈解决在实际问题背景下对较复杂问题的递归算法。[实验内容及要求](1)实现简单行编辑器,可以输入一个多行的字符序列。但行字符总数(包含退格符和退行符)不大于250。 (2)利用顺序栈保存从终端接收的字符,每行回车时显示经过编辑的本行字符,----例如:用户输入为:voL#id mia##ain(){   chur@charch;输出为: voidmain(){charch;《算法与数据结构》实验报告学院专业姓名学号实验4:队列的应用(6学时)[问题描述]实现一个简单银行叫

7、号模拟系统。银行有三个窗口可以同时办理业务,当有用户到达银行时,首先选择自己要办理的业务,可以选择一种或多种。系统计算办理此业务所需的时间并显示给用户,然后系统查看有无空闲的窗口,如果有,通知用户到一个空闲窗口办理,如果没有空闲窗口,则需安排用户到某个窗口等候,系统先计算每个队列中用户办理业务的总时间,将用户安排到时间最短的队列等候。模拟输出多个用户办理业务的过程。输入举例如下:用户1在时间1到达银行,在1号窗口办理业务,需要1分钟用户1在时间2结束,离开用户2在时间3达到。在1号窗口开始办理,办理业务需要4分钟用户3在时间3到达,在2号窗口开

8、始办理,办理业务需要5分钟----用户4在时间5到达,在3号窗口开始办理,办理需要8分钟用户5在时间6到达,在1号窗口等待,办理业需要4分钟用户2在时

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

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

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