欢迎来到天天文库
浏览记录
ID:61507318
大小:75.00 KB
页数:15页
时间:2021-02-08
《《算法与数据结构》 实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、《算法与数据结构》实验报告班级____________姓名___________学号_____________实验1:线性表的建立及操作(6学时)[问题描述]定义一个图书类和一个书库类。图书类包括图书编号、书名、作者(只考虑第一作者)、定价等属性;书库类包括一个指向图书链表的头指针以及操作链表的相关函数。这两个类的定义如下:classBook{intBookNumber;//图书编号charBookName[50];//书名charAuthorName[30];//第一作者姓名doublePrice;//定价Book*next;//指向下一个图书对象的指
2、针public:voidprint();//输出图书的所有属性};classBookStore{Book*book_head;//图书链表的头指针public:BookStore();//创建书库对象,图书链表的头指针为空Book*createBook();//创建一个图书对象voidinsertBook(Book*b);//按定价从高到低将图书对象插入到图书链表voiddeleteBook(intbooknumber);//从链表中删除图书编号为booknumber的图书doublegetTotalPrice();//获得该书库中图书的定价之和intg
3、etBookCount();//获得该书库中图书的数目Book*findBook(intbooknumber);//按照图书编号查找图书,并输出图书信息Book*findBook(char*str);//按照书名或者作者查找图书,并输出图书信息voidprint();//输出该书库中所有图书信息~BookStore();//释放书库对象......//根据需要设置其它方法};[实验目的](1)熟悉面向对象程序设计中链表结点的定义以及链表的建立过程;(2)掌握链表的基本操作,包括:遍历链表、插入结点、删除结点等。[实验内容及要求](1)在VisualC++
4、6.0环境下,编写程序实现图书类和书库类;(2)在主函数中建立一个图书链表,并测试图书类和书库类中的相关方法。《算法与数据结构》实验报告班级____________姓名___________学号_____________实验2:线性表的应用(6学时)[问题描述]通过单链表实现整数集合的交(∩)、并(∪)、异或(XOR)运算。其中:两个集合A和B的异或运算的结果是属于A且不属于B的元素和属于B且不属于A的元素。[实验目的](1)熟练掌握链表的基本操作;(2)运用链表解决实际问题。[实验内容及要求](1)编写程序,设计结点类,通过链表描述整数集合;(2)在主
5、函数中建立两个递增排序的整数链表,对这两个链表依次执行交、并、异或运算,并输出相应结果;如果运算结果为“空”,则输出“NULL”;(3)由于同一个集合中不能同时存在两个相同的元素,因此在一个链表中不应存在数值相同的两个结点;(4)当执行集合的异或运算时,不开辟新空间,只在原有的两个链表上进行操作。[示例输入/输出]示例输入:1051579100-43189-100661565200-988765401622-12-10036518123示例输出:第一个集合共有9个元素,分别是:-100-43579151866100第二个集合共有15个元素,分别是:-10
6、0-12-9015681622881232003657654两个集合的交共有2个元素,分别是:-1005两个集合的并共有22个元素,分别是:-100-43-12-901567891516182266881001232003657654两个集合的异或共有20个元素,分别是:-43-12-90167891516182266881001232003657654《算法与数据结构》实验报告班级____________姓名___________学号_____________实验3:栈和队列的应用(12学时)[问题描述]设停车场是一个可停放n辆汽车的狭长通道,且只有一
7、个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在停车场的最北端),若停车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入停车场;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场;每辆停放在车场的车在它离开停车场时,必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。[实验目的](1)理解栈(先进后出)和队列(先进先出)的工作特点;(2)掌握栈结构的
8、构造方法以及栈的基本操作(出栈、入栈);(3)掌握队列的构造方法以及队列的基本操
此文档下载收益归作者所有