首页 > 搜索 > 哈夫曼译码算法报告,哈夫曼编码译码器实验报告.doc -max上传文档投稿赚钱-文档C2C交易模式

哈夫曼译码算法报告,哈夫曼编码译码器实验报告.doc -max上传文档投稿赚钱-文档C2C交易模式

互联网 2020-10-21 15:21:43
在线算命,八字测算命理

实验报告

哈夫曼编码及译码?

?

班级:软件工程一班

学号:2220141524

姓名:孙正涛

1 问题描述

设计一个利用哈夫曼算法的编码和译码系统,重复地显示并处理以下项目,直到选择退出为止。?将权值数据存放在数据文件(文件名为data.txt,位于当前目录中)?分别采用动态和静态存储结构; 初始化:键盘输入字符集大小n、n个字符和n个权值,建立哈夫曼树;?编码:利用建好的哈夫曼树生成哈夫曼编码;输出编码;一个利用哈夫曼算法的编码和译码系统

4 详细设计

数据类型的定义

(1)哈夫曼树节点类型 struct hufmtreenode{ //哈弗曼树结点数据类型 char data; float weight; //结点权值 int parent,lchild,rchild; //父结点,左、右孩子结点 };

(2)哈夫曼树类型 struct hufmtree{ //哈弗曼树数据类型 hufmtreenode *node; //结点数组(根据n的值动态分配) int n; //叶子结点数

};

(3)哈夫曼编码数据类型 struct Codetype{ //哈弗曼编码数据类型 char *bits; //编码流数组, int start;//编码实际在编码流数组里的开始位置

}

5 测试分析

(1)打开源文件统计各字符及权值信息并存入data.txt文件中

(2)将统计出的权值信息进行哈夫曼编码

将编码内容存入CodeFile.txt文件中

将CodeFile.txt文件中的内容译码

成功译码把原字符信息存入DeCodeFile.txt文件中

(6)输入各字符及其权值

将各字符的权值信息进行哈夫曼编码

根据编码再进行译码工作

6 课程设计总结

课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过
免责声明:非本网注明原创的信息,皆为程序自动获取互联网,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责;如此页面有侵犯到您的权益,请给站长发送邮件,并提供相关证明(版权证明、身份证正反面、侵权链接),站长将在收到邮件12小时内删除。

相关阅读

一周热门

查看更多