资源预览内容
第1页 / 共11页
第2页 / 共11页
第3页 / 共11页
第4页 / 共11页
第5页 / 共11页
第6页 / 共11页
第7页 / 共11页
第8页 / 共11页
第9页 / 共11页
第10页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
,献给小杨老师,设计题目 Huffman编码和译码,小组成员:张林,刘思琪 邓娜,彭鑫琪,课题设计的目的及意义,采用有效的数据压缩技术节省数据文件的存储空间已经引起人们的重视,霍夫曼编码就是一种有效的的数据压缩技术,信息通信可以大大提高信道利用效率,缩短信息传输时间,降低成本。So设计霍夫曼树具有非常重要的现实意义,Huffman编码与译码的原理,输入一个字符串,统计其出现的频率,通过对带权值的字符串的编码从而构造最优二叉树,左子树为0,右子树为1,取0或1作为字符串的编码,权值定义为出现次数的频率,频率越高字符编码越短,及把输入的字符串编码成二进制输出,译码时将二进制编译成字符串,编入完成后将结果存入一个文件中,以便译码时调用,算法思想分析,通过C+算法建立一个类HffmanTree,在此类中定义并实现huffman树的建立,编码,译码,生成和输出等一系列方法,并通过主函数调用类中的各种方法来实现各种需求。,构造huffman方法与步骤,(1)统计n个字符,构造n个节点二叉树,权值为W1,W2,W3,构成集合M,这些结点既为根节点,又为子结点 (2)在M中取权值最小的数作为左右子数,构造新二叉树 (3)从M中删除被选中的两棵树,将新的二叉树插入进去 (4)重复(2)(3)至M中直到只剩一棵二叉树,即huffman树,主要算法流程描述,运行结果展示,Game over,Huffman编译码器的课程设计,让我们加深了对数据结构以及二叉树逻辑结构,存储结构的理解,学会了如何把学到的知识用于解决实际问题,锻炼了自己动手能力。,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号