欢迎来到天天文库
浏览记录
ID:34486070
大小:107.15 KB
页数:3页
时间:2019-03-06
《数据结构课程设计-2010new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《数据结构》课程设计任务书2010.12.16~2010.12.28一.课程设计的目的通过本设计的训练,深入理解常用的算法,提高算法设计与程序实现能力。二.设计内容1.问题描述(二选一)问题一:模拟磁盘管理系统本项目要求在划出的内存资源(数组)中模拟磁盘管理文件的行为,包括读取指定位置的数据内容以及在指定内存中多次写入数据、修改数据、删除数据和碎片整理,要求具有良好的人机交互界面(图形界面或命令行界面均可)。1.内存分配:以字符作为基本的分配单位,在本项目中,限定字符数组的长度为100。2.可用空间查询:提交的程序应提供界面,便于用户随时查询剩余的可用空间大小。3.空间管
2、理:1)可用空间管理:要求采用带头结点的单链表管理可用空间,链表的每个节点分别记录一段连续的地址空间,节点的核心结构如下:BlockNode{intstart;//本段空间的起始下标intend;//本段空间的终止下标Nodenext;//next节点}2)数据空间管理:要求使用单链表作为访问数据空间的入口,该链表的节点的核心结构如下:DataSpaceNode{intDataID;//本段字符串的唯一ID,由用户指定BlockNodestart;//本段字符串的首块存储地址DataSpaceNodenext;//next节点}3)管理策略:初始状态下可用空间链表只有一个
3、数据节点,其start值为0,end值为99,next值为null;DataSpaceNode为空链表。添加:用户需同时提供新添加的DataID和待添加的数据元素,本程序必须从可用空间链表中的最小下标开始在数组中为待添加的数据元素选取存储空间,写入数组结束后需对可用空间链表和数据空间链表作相应处理。删除:不需要改变数组中的任何数据内容,仅需对可用空间链表和数据空间链表作相应处理修改:若修改没改变原有字符串长度,则不需要对可用空间链表和数据空间链表作任何处理,否则也需对其分别作相应的改动。4.数据查看方式:须支持如下两种查看方式:1)根据用户输入的起始位置和结束位置,列出字
4、符串中相应位置上的所有数据内容(例如用户输入0和99,则是要列出整个字符数组的内容,请注意有部分位置的内容已被删除,但其内容没有被修改,这些内容也要列出来);2)根据用户输入的字符串ID(即DataID),列出该字符串以及存储该串的各块地址空间的起止情况。问题二:Huffman树编码本项目要求能根据输入的一段文档对字符的编码进行优化设计,输出其Huffman编码。输入要求:提供输入界面(windows界面或命令行界面均可),提示用户输入外部的文档路径和文档文件名;输出要求:要求输出到程序运行目录下的文件中,该文件名为“输入文件名_encode.txt”,文件格式如下(注意
5、在下文中,“第*行”字样不包含在文档中):第一行:文档总字数:***(空格)平均编码长度:第二行至最后一行,每行内容如下:字符:出现总次数:编码。例如,假设某文档中只包含“输出要求”四个字符,则输出文件内容如下:文档总字数:4平均编码长度:2输:1:00出:1:01要:1:10求:1:112.文档要求文档写作要求尽可能规范,文档内容应包括(但不限于)如下内容:1.课程设计任务描述;2.程序总体结构描述,主要是程序的总体结构图(可以理解程序的类组成图和类调用图),并需对各组成类的功能进行简单概括;3.具体描述,内容包括:(1)各个核心类的数据结构、输入输出接口以及功能描述;
6、(2)核心代码和注释。原则上,建议每个核心类作为独立一个章节4.使用手册和测试结果对提交的软件的使用说明以及测试结果(需有程序运行界面的截图)。3.课程设计进度安排2010.12.16~2010.12.28。4.作业提交要求1.提交材料(电子版)包括:源程序及可执行文件、课程设计文档、执行文件使用说明手册。2.课程设计文档的打印版请于2010年12月29日考试后由各班长上交。3.电子版提交时间(2010年12月29日)。4.电子版提交网址ftp://datastructure:datastructure@222.201.138.64
此文档下载收益归作者所有