霍夫曼将两个字符编码为一个

时间:2010-05-22 14:36:47

标签: java python huffman-code

我需要霍夫曼代码(最好是在python或java中),它可以编码文本而不是一个字符(a = 10, b = 11),而是两个(ab = 11, ag = 10)。是否有可能,如果是的话,我在哪里可以找到它,也许它在互联网的某个地方,我就能找到它?

3 个答案:

答案 0 :(得分:5)

霍夫曼代码不关心字符,它关心符号。通常,它用于编码字母/其他单个字符,但可以非常容易地推广以编码字符串。基本上,您只需要一个现有的实现,并允许符号是字符串而不是字符。然后,叶节点将对应于字符串列表。

答案 1 :(得分:1)

有一个与Python bitarray模块一起分发的Huffman编码器示例,如果这对你有用的话。

答案 2 :(得分:0)

某处可能有一些代码。但这听起来像是一个解析和标记问题。我要回答的第一个问题之一是你要处理多少个独特的对。霍夫曼编码最适用于少量令牌。例如,键盘上的101个字符。但是如果你的两个角色可以是任何东西,那么你现在正在大量扩展最大字符数。