首页 > 软件 > 用Java语言写一个用哈夫曼编码对任意一个文件的内容进行编解码的程序。

用Java语言写一个用哈夫曼编码对任意一个文件的内容进行编解码的程序。

软件 2022-12-06

求助:用java实现哈夫曼编码压缩与解压缩算法。

你好,由于内容比较多,先概述一下先。如图所示,为我写的一个压缩软件,原理是利用哈弗曼算法实现的。我将资料整理好稍后就发到你邮箱,但在这里简要说明一下代码。

请看我的空间

http://hi.baidu.com/%D2%B6%BF%C6%C1%BC/blog

中的文章共5篇(太长了)

http://hi.baidu.com/%D2%B6%BF%C6%C1%BC/blog/item/93c35517bb528146f2de32fd.html

1.HuffmanTextEncoder类完成压缩功能,可直接运行,压缩测试用文本文件。

2.HuffmanTextDecoder类完成解压缩功能,可直接运行,解压缩压缩后的文本文件。

3.BitReader,工具类,实现对BufferedInputStream的按位读取。

4.BitWriter,工具类,实现按位写入的功能。该类来自网络。

5.MinHeap,模板工具类,实现了一个最小堆。生成Huffman树时使用。

java 写的哈夫曼编译器

河边茂盛的草地,在干草收割之前, 在狞笑着 清晨四点钟,夏天, 寻找虔敬的仪式, 从大海蓝色的中睡中,废墟提起 清目醒神常洗头哈哈

数据结构程序作业 Huffman编码 是java版的哈 求帮忙呀 ~>.<~

import java.util.Random;class HuffmanTree { Node[] nodes; HuffmanTree(Node[] nodes) { this.nodes = nodes; } public static Node buildTree(Node[] nodes, int end) { sort(nodes,end); // 根据树的权值由小到大排序 // 取出取值最小的两棵树 Node first = nodes[0]; Node second = nodes[1]; int data = first.data + second.data; nodes[0

java哈夫曼编码压缩文件的思想

一.模型表示: 计算机使用数字代码来存储字符,ASC II码是最常用的编码。一个ASC II码值占一个字节(8个二进制位),其最高位(b7)用作奇偶校验位,共128个。要对一个文本文件进行压缩,就是要对文件内的字符重新编码,使出现次数较多的字符用较短的编码存储,而出现次数少的字符则采用相对较长的编码存储,最终使压缩后整个文件的大小小于原文件。 这里采用哈夫曼编码方式来对每个字符重新编码,因为哈夫曼树具有最小带权路径长度的性质,能够生成用于压缩的二进制前缀码。程序使用的 “静态统计模型”,也就是说在编码前统计要编码的信息中所有字符的出现频率,字符的出现频率即为字符的权,然后根据统计出的信息建立编

标签:编程 信息技术 Java Java编程

大明白知识网 Copyright © 2020-2022 www.wangpan131.com. Some Rights Reserved. 京ICP备11019930号-18