首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我们不使用简单的二进制值来压缩数据

为什么我们不使用简单的二进制值来压缩数据
EN

Stack Overflow用户
提问于 2015-04-08 10:27:20
回答 1查看 99关注 0票数 1

在Huffman算法中,我们形成一棵树,并将每个字符替换为1和0的树值,为什么我们不简单地使用像a=0,b=1,c=10,d=01,e=11这样的二进制数字来代替它们,而不是用字符来代替它们,当解压缩时,应用相反的方法,用字母替换二进制数字。

像这样的

代码语言:javascript
复制
character Huffman-code binary-code
a            00            0
b            01            1
c            101           01

等等..。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-08 13:23:58

赫夫曼码的重要条件是没有两个是彼此的前缀。如果你只是重新编号他们(我认为这是你的建议),你失去了这个财产。

要了解为什么会出现这种情况,请将"01“作为输出。在非赫夫曼版本中,它可能是"0“,后面是"1”(例如"ab"),也可能是"01“(因此是"c"),您无法判断哪个版本。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29512111

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档