我有一个问题是找到一种安全的方法来创建区块,它特别关注霍夫曼代码的长度。是否有一个安全的字节数可以从数据中读取,由此产生的霍夫曼代码不会超过15的既定长度,并且压缩也不会那么糟糕?规范并没有阐明这个条件是如何实现的。
当时我正在做的是停止我的输入编码,直到一定数量的字节,因为我不知道如何处理这件事。
欢迎任何帮助。
发布于 2019-01-05 03:39:31
限制霍夫曼代码的长度不是通过限制要在块中压缩的数据量来实现的。这个限制太短了。相反,如果应用霍夫曼算法导致某些代码长于15位,则修改霍夫曼代码以解决该问题。有关示例,请参阅trees.c in zlib。
也可以使用对最大码长有限制的修改的霍夫曼算法。参见。
https://stackoverflow.com/questions/54024601
复制相似问题