【问题标题】:Question about the compressibility of certain groups of numbers关于某些数字组的可压缩性的问题
【发布时间】:2011-04-07 02:37:28
【问题描述】:

假设我们有一堆数字,它们从大偏移量中以小值递增

例如偏移量 = 123456789

我们的数字是: 123456790 123456791 123456793 123456796 123456799 123456804

如果我们从这些数字中减去偏移量,我们得到 1 2 4 7 10 15

数字将与 8 个字节的其他数据一起存储,总共 12 个其他字节,然后将其中一组 10000 个压缩成一个块

所以如果我们将这些数字存储为 32 位整数并对其进行压缩,如果我们使用第二组数字,它们的压缩效果会更好吗?还是因为它们包含相同数量的熵,它们将完全一样地压缩?

因为我的工作伙伴立即响应是第二组将压缩得更好,因为在第二组中的 32 位数中会有很多零,但是熵是相同的(我认为)所以典型的压缩算法无论如何都无法解决这个问题并导致相似的压缩率?

最终我想我必须尝试一下才能看到结果如何,但我很想提前弄清楚。

【问题讨论】:

    标签: compression data-compression


    【解决方案1】:

    这被称为delta encoding。根据您的数据的具体情况,这可能会为您提供更好的压缩。也可能获得更直接的节省:例如,如果您确定相邻元素之间的差异永远不会超出 0-255 范围,您可以将增量存储为单个字节而不是 32 位整数.

    【讨论】:

    • 使用 winrar 似乎可以将没有偏移量的文件压缩 10% 左右,所以其中有一些东西,我想使用终极完美压缩存档器应该是一样的,但在现实中。谢谢
    猜你喜欢
    • 1970-01-01
    • 2021-01-21
    • 2014-10-05
    • 2015-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-10
    • 2018-09-14
    相关资源
    最近更新 更多