数据结构.docx
- 文档编号:13591069
- 上传时间:2023-06-15
- 格式:DOCX
- 页数:6
- 大小:16.55KB
数据结构.docx
《数据结构.docx》由会员分享,可在线阅读,更多相关《数据结构.docx(6页珍藏版)》请在冰点文库上搜索。
数据结构
数据结构
(2)实验指导书
信息工程学院计算机系
实验一
实验目的
熟悉非线性结构的特点,掌握非线性结构的存储方式及各种操作的实现方法,同时对自顶向下的程序设计方法、应用程序界面的设计、非线性结构的文件存储方法等方面的辑程技术进行训练。
时间要求:
4+4学时
问题描述:
利用哈夫曼编码进行信息通讯可以大大提高信道利用率,缩短信息传输时间,降低传输成本。
但是,这要求在发送端通过一个编码系统对待传数据预先编码;在接收端将传来的数据进行译码(复原)。
对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统,试为这样的信息收发站写一个哈夫曼编译码系统。
基本要求:
一个完整的系统应具有以下功能:
(1)I:
初始化。
从终端读入字符集大小n,及n个字符和n个权值,建立哈夫曼树,并将其存于文件hfmtree中。
(2)C:
编码。
利用已建好的哈夫曼树(如不在内存,则从文件hfmtree中读入),对文件tobetrans中的正文进行编码,然后将结果存入文件codefile中。
(3)D:
译码。
利用已建好的哈夫曼树将文件codefile中的代码进行译码,结果存入文件textfile中。
(4)P:
打印代码文件。
将文件codefi1e以紧凑格式显示在终端上,每行50个代码。
同时将此字符形式的编码文件写入文件codeprint中。
(5)T:
打印哈夫曼树。
将已在内存中的哈夫曼树以直观的方式(树或凹凸表形式)显示在屏幕上,同时将此字符形式的哈夫曼树写入文件treeprint中。
实现提示:
(1)用户界面可以设计为“菜单”方式:
显示上述功能号,再加上“E”表示结束运性行结束,用户键入一个选择功能字符,则执行相应的功能,此功能执行完毕后再显示此菜单,直至用户选择了“E”为止。
(1)在程序的一次执行过程中,第一次执行了I、D或C命令之后,哈夫曼树已经在内存中存在了,不必再读入。
每次执行中不一定执行I命令,因为文件hfmtree可能早已建好。
选作内容:
(1)修改你的系统,使系统实现对自身源程序的编码和译码(注意特殊符号的编/译码问题)。
(2)实现各个转换操作的源/目的文件均由用户自己指定。
实验二
实验目的
熟悉图的相关操作,掌握图的搜索算法及其应用,同时进一步练习栈与队列在实际问题中的应用。
时间要求:
4+4学时
问题描述:
一只老鼠走进了一个迷宫,这个迷宫是由M行N列(如:
10行8列)的方格构成的,相邻方格之间可能是相通的,也可能有墙相隔,各方格位置由其对应坐标确定,如图所示。
迷宫在(1,1)处有一个入口,在(M,N)处有一个出口,在入口和出口之间有通路相通。
问题是让你帮助老鼠找出从入口到出口的一条最短路径。
00001000
11001010
00010000
00001010
10100000
00111011
10001000
基本要求:
为老鼠找出一条从入口到出口的最短路径。
实现提示:
1、迷宫用数组表示,1代表是墙走不通,0表示可以通行。
边界可以扩充为墙,即M×N迷宫用(M+2)×(N+2)数组表示。
2、向4个方向前进时的位移量可以用以下数组表示,处理时方便。
intmove[4][2]={{0,1},{1,0},{0,-1},{-1,0}};
3、采用图的广度优先搜索算法。
选作内容:
对给定的迷宫,统计出共有多少条不同的路径。
数据结构实验报告
实验一哈夫曼树实验
班级:
____________姓名:
____________学号:
____________
实验目的:
熟悉非线性结构的特点,掌握非线性结构的存储方式及各种操作的实现方法,同时对自顶向下的程序设计方法、应用程序界面的设计、非线性结构的文件存储方法等方面的辑程技术进行训练。
问题描述:
利用哈夫曼编码进行信息通讯可以大大提高信道利用率,缩短信息传输时间,降低传输成本。
但是,这要求在发送端通过一个编码系统对待传数据预先编码;在接收端将传来的数据进行译码(复原)。
对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统,试为这样的信息收发站写一个哈夫曼编译码系统。
基本要求:
一个完整的系统应具有以下功能:
(1)I:
初始化。
从终端读入字符集大小n,及n个字符和n个权值,建立哈夫曼树,并将其存于文件hfmtree中。
(2)C:
编码。
利用已建好的哈夫曼树(如不在内存,则从文件hfmtree中读入),对文件tobetrans中的正文进行编码,然后将结果存入文件codefile中。
(3)D:
译码。
利用已建好的哈夫曼树将文件codefile中的代码进行译码,结果存入文件textfile中。
(4)P:
打印代码文件。
将文件codefi1e以紧凑格式显示在终端上,每行50个代码。
同时将此字符形式的编码文件写入文件codeprint中。
(5)T:
打印哈夫曼树。
将已在内存中的哈夫曼树以直观的方式(树或凹凸表形式)显示在屏幕上,同时将此字符形式的哈夫曼树写入文件treeprint中。
需求分析:
(包括对问题的理解,解决问题的策略、方法描述)
系统设计:
(包括数据结构定义、抽象出基本操作描述、主程序模块处理过程描述)
调试分析:
(包括调试过程中对原设计的修改,以及遇到的问题和解决的方法)
测试结果:
(输入的测试数据及运行结果、正确性、在线测试情况)
基本操作的实现:
(对各基本操作实现的描述)(后面可加页)
数据结构实验报告
实验二图搜索实验
班级:
____________姓名:
____________学号:
____________
实验目的:
熟悉图的相关操作,掌握图的搜索算法及其应用,同时进一步练习栈与队列在实际问题中的应用。
问题描述:
一只老鼠走进了一个迷宫,这个迷宫是由M行N列(如:
10行8列)的方格构成的,相邻方格之间可能是相通的,也可能有墙相隔,各方格位置由其对应坐标确定,如图所示。
迷宫在(1,1)处有一个入口,在(M,N)处有一个出口,在入口和出口之间有通路相通。
问题是让你帮助老鼠找出从入口到出口的一条最短路径。
基本要求:
为老鼠找出一条从入口到出口的最短路径。
需求分析:
(包括对问题的理解,解决问题的策略、方法描述)
系统设计:
(包括数据结构定义、抽象出基本操作描述、主程序模块处理过程描述)
调试分析:
(包括调试过程中对原设计的修改,以及遇到的问题和解决的方法)
测试结果:
(输入的测试数据及运行结果、正确性、在线测试情况)
基本操作的实现:
(对各基本操作实现的描述)(后面可加页)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构