2022年实验六-哈夫曼编码和译码的算法设计与实现.docx
《2022年实验六-哈夫曼编码和译码的算法设计与实现.docx》由会员分享,可在线阅读,更多相关《2022年实验六-哈夫曼编码和译码的算法设计与实现.docx(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品学习资源实 验 名实 验 方实 验试验六哈夫曼编码和译码的算法设计与实现称案成果实 验 日实验信息系统设计与仿实 验 操2021-04-22期室真室 I作实 验 台信 工 11-1BF李 煌实 验 结34号班级号峰果一、试验目的1、依据算法设计需要 , 把握哈夫曼编码的二叉树结构表示方法;2、编程实现哈夫曼编译码器;3、把握贪心算法的一般设计方法;二、预习与参考1、仔细阅读数据结构教材和算法设计教材内容,熟识哈夫曼编码的原理;2、设计和编制哈夫曼编译码器; 参考数据类型或变量 typedef ElemType char;typedef struct nodeint w; int flag;
2、ElemType c;struct node *plink,*llink,*rlink; char codem;Node;Node *numn, *root; 参考子程序接口与功能描述 void SetTree NODE *root 功能 :从终端读入字符集大小n,以及 n 个字符和 n 个权值,建立哈夫曼树void EnCode Node *p 功能 :利用已建好的哈夫曼树,对输入的正文进行编码欢迎下载精品学习资源void DeCode void 功能 :利用已建好的哈夫曼树,将输入的代码进行译码三、试验要求上机试验时,一人一组,独立上机,娴熟运用二叉树与贪心思想对数据进行压缩;四、试验步骤
3、1、 设计 SetTree的测试方案和程序, 输入测试数据 , 修改并调试程序 , 直至正确为止 ;2、设计 EnCode的测试方案和程序, 输入测试数据, 修改并调试程序, 直至正确为止;3、设计 DeCode的测试方案和程序, 输入测试数据, 修改并调试程序, 直至正确为止;4、 将你的程序整理胜利能模块存盘备用;5、 将写的程序如下: #include #include #include #include #define maxn 20/最大结点数目#define inf 0xfffffff /无穷大typedef struct nodedouble w; int flag; int c
4、;struct node *plink,*llink,*rlink; char codemaxn;int codelen;node /初始化节点flag=0; llink=NULL; plink=NULL; rlink=NULL; codelen=0;欢迎下载精品学习资源node;node *num2*maxn-1;/指针数组int n;void SetTreenode *&root/从终端读入字符集大小n,以及 n 个字符和 n 个权值, 建立哈夫曼树int i,m,j;scanf%d,&n;/输入结点个数 n fori=0;ic=i;scanf%lf,&numi-w;/输入结点的权值m=n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 实验 哈夫曼 编码 译码 算法 设计 实现
限制150内