哈夫曼数实验报告

哈夫曼数实验报告

ID:44118540

大小:339.30 KB

页数:15页

时间:2019-10-18

哈夫曼数实验报告_第1页
哈夫曼数实验报告_第2页
哈夫曼数实验报告_第3页
哈夫曼数实验报告_第4页
哈夫曼数实验报告_第5页
资源描述:

《哈夫曼数实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验报告题目:编写哈夫曼数程序班级:软件工程(2)姓名:二二学号:0925115025完成日期:2011-5-24一.需求分析输入信息以加载存档的reading.txt文件为方式,加载不成功,提示出错信息,加载成功后,系统对其编码,并按照选择对各种相关信息存档。二.概要设计哈夫曼树用邻接矩阵作为存储结构,借助静态链表来实现遍历2.1结构定义#dcfincMAXVALUE1000//定义最大权值#defincMAXBIT100//定义哈夫曼树中叶子结点个数typcdcfstruct{chardata;//字

2、符值intnum;//某个值的字符出现的次数}TotalNodc;//统计结点,包括字符种类和出现次数typedefstruet{TotalNodctot[300];//统计结点数组intnum;//统计数组中含有的字符个数}Total;//统计结构体,包括统计数组和字符种类数typcdcfstruct{charmes[300];//字符数组intnum;//总字符数}Message;//信息结构体,包括字符数组和总字符数typedefstruet{intlockcd[500];//密码数组intnum;

3、//密码总数}Locking;//哈夫曼编码后的密文信息typcdcfstructchardata;//字符intweight;//权值intparent;//双亲结点在数组HuffNode[]中的序号intlchild;//左孩子结点在数组HuffNode[]中的序号intrchild;//右孩子结点在数组HuffNode[]中的序号}HNodetype;//哈夫曼树结点类型,包括左右孩子,权值和信息typedefstruet{intbit[MAXBIT];intstart;}HCodetype;//哈

4、夫曼编码结构体,包括编码数组和起始位2.2主要函数声明及功能描述如下voidreading_file(Message^message);从文件中读取信息voidwritingfile(Message^message);将信息写进文件voidtotalmessage(Message^message,Total*total);统计信息中各字符的出现次数voidHaffmanTree(Total*total,HNodetypeHuffNode[]);构建哈夫曼树voidHaffmanCode(HNodetype

5、HuffNode[],HCodetypeHuffCode[],Total*total);建立哈夫曼编码voidwritingHCode(HNodetypeHuffNode[],HCodetypeHuffCode[],Total*total);将编码规则写进文件voidlock(Message^message,HNodetypeHuffNode[],HCodetypeHuffCode[],Total^total,Locking^locking);给文件信息加密编码voidwritinglock(Lockin

6、g^locking);将已编码信息写进文件voidwritingtranslate(Locking^locking,HCodetypeHuffCode[],HNodetypeHuffNode[],Total*total);将已编码信息翻译过来并写进文件一.详细设计头文件head.h^defineMAXVALUE1000//定义最大权值^defineMAXBIT100//定义哈夫曼树中叶子结点个数typedefstruct{chardata;//字符值intnum;//某个值的字符出现的次数}TotalNo

7、de;//统计结点,包括字符种类和岀现次数typedefstruct{TotalNodctot[300];//统计结点数组intnum;//统计数组中含有的字符个数}Total;//统计结构体,包括统计数组和字符种类数typedefstruct{charmcs[300];//字符数组intnum;//总字符数}Message;//信息结构体,包括字符数组和总字符数typedefstruct{intlocked[500];//密码数组intnum;//密码总数}Locking;//哈夫曼编码后的密文信息ty

8、pedefstruct{chardata;//字符intweight;//权值intparent;//双亲结点在数组HuffNode[]中的序号intlch订d;//左孩子结点在数组HuffNode[]中的序号intrch订d;//右孩了结点在数组HuffNode[]中的序号}HNodetype;//哈夫曼树结点类型,包括左右孩子,权值和信息typedefstruct{intbit[MAXBIT];intstart;}HCod

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

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

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