目前使用行程长度编码来编码位向量,当前运行时间是 2log(i),其中是运行的大小。还有另一种方法可以将其归结为log(i)吗? 感谢。
答案 0 :(得分:6)
编码位向量的最有效方法是隔离位源的任何特定属性。如果它是完全随机的,则没有明显的增益(实际上,完全随机的比特流不能以任何方式压缩)。
如果您可以在比特流中找到属性,则可以尝试定义一组矢量,这些矢量将定义矢量空间的基础。在这种情况下,结果将非常有效。
我们需要有关您的比特流的更多详细信息。
(编辑)
了解前一个声明的更多细节: “完全随机的比特流不能以任何方式压缩”
如果通过“压缩”我们的意思是“变换/压缩流”加上“矢量基础定义”加上减压计划。但在大多数情况下,解压缩程序(通常也是矢量库)都嵌入在客户端软件中。因此,只需要“压缩流”。
关于这一点的一个很好的解释(和有趣的故事)是Patrick Craig 5000$ compression challenge
更加科学theory of information, especially entropy section
最后一个,the full story。
但无论解决方案是什么,如果你有一个未知数量的未知流来压缩你就不会做任何事情。你必须找到一种模式。