用c语言实现的哈夫曼编码译码器,是数据结构中的经典案例。里面含有设计报告和源代码。把好的东西贡献出来,供大家参考一下。
2019-12-21 21:17:35 276KB 哈夫曼 编码 译码 C语言
1
数据结构哈夫曼编码带译码功能,C语言版程序加完成版实验报告,完全可运,供大家参考。
1
这是我自己写的哈夫曼编码译码器的代码和报告,有需要和兴趣的可以看看,属于初学数据结构的人的材料,资深写程序的可以忽略。
2019-12-21 20:08:38 104KB 哈夫曼编码译码器源代码和报告
1
设计一个哈夫曼编码/译码系统,对一个文本文件中的字符进行哈夫曼编码,生成编码文件(后缀名.cod);反过来,可将一个编码文件还原为一个文本文件(.txt)。 要求: (1)输入一个待编码的文本文件名,统计文本文件中各字符的个数作为权值,生成哈夫曼树; (2)将文本文件利用哈夫曼树进行编码,生成编码文件(后缀名cod); (3)输入一个待解码的编码文件名称,并利用相应的哈夫曼树将编码文件译码; (4)显示指定的编码文件和文本文件; (5)把哈夫曼编码用二进制位紧缩到一个变量中,利用位运算进行真正的数据压缩,并求压缩比。(此选项选作)
1
哈夫曼编码译码器实验报告,内有源代码,vc++6.0写的
2019-12-21 19:57:30 421KB 哈夫曼编码译码器
1
文本处理是现代化计算机应用的重要领域。文本由字符组成,字符以某种编码形式存储在计算机中。每个字符的编码可以是相等长度的,也可以是不等长度的。我们熟知的ASCII编码是等长编码。为了提高存储和处理文本的效率,在一些计算机应用场合,如数据通信,常采用不等长的编码,对常用的字符用较少的码位编码,不常出现的字符用较多的码位编码,从而减少文本的存储长度。哈夫曼编码就是用于此目的的不等长编码方法。当然,编码的对面就有译码。本课题中,首先是构造哈夫曼树。给定一组权值,以此作为叶结点的权值,可以构造多棵扩充二叉树,它们通常具有不同的加权路径长度。其中具有最小加权路径长度的扩充二叉树,用于构造高效的不等长编码。哈夫曼给出了构造具有最小加权路径长度的扩充二叉树的算法,称位哈夫曼算法。用哈夫曼算法构造的扩充二叉树称为哈夫曼编码树或哈夫曼树。当然,还有编码和译码部分。本系统的前端开发工具是Visual C++6.0。具有输入字符集大小及权值大小,构造哈夫曼树,并对用户输入的字符串进行编码以及译码还有退出四种功能。本程序经过测试后,功能均能实现,运行稳定。
2019-12-21 19:43:40 2.52MB 哈夫曼树,编码,译码,权值
1
设计一个利用哈夫曼算法的编码和译码系统,重复地显示并处理“要求”中项目,直到选择退出为止。 要求: (1)将权值数据存放在数据文件(文件名为data.txt,位于执行程序的当前目录中) (2)分别采用动态和静态存储结构 (3)从键盘输入字符集大小n、n个字符和n个权值,建立哈夫曼树; (4)利用建好的哈夫曼树生成哈夫曼编码; (5)输出编码; 用户可以执行的的功能有: (1)---选择读取某个源文件由系统解析建立哈夫曼树 (2)---手动输入字符集及其权值信息建立哈夫曼树 (3)---打印字符集的哈夫曼编码到屏幕 (4)---选择某个文本文件进行编码 (5)---选择某个代码文件进行译码
2019-12-21 19:31:25 11KB 数据结构 哈夫曼 编码 译码
1