【发布时间】:2011-02-06 12:49:18
【问题描述】:
This article 说:
每个素数都可以表示为
30k±1、30k±7、30k±11或30k±13一些k。 这意味着我们每个可以使用 8 位 三十个数字来存储所有 素数;一百万个素数可以是 压缩到 33,334 字节
“这意味着我们可以使用每 30 个数字中的 8 位来存储所有素数”
这个“每 30 个数字 8 位”将用于 k,对吗?但每个 k 值不一定只占用一位。不应该是八个k值吗?
“一百万个素数可以压缩到 33,334 字节”
我不确定这是怎么回事。
我们需要指出两件事:
k 的值(可以任意大)
STATE 来自八个州之一
(-13,-11,-7,-1,1,7,11,13)
我并没有关注“33,334 字节”是如何得出的,但我可以说一件事:随着质数的值越来越大,我们将需要更多空间来存储该值k。
如何,那么我们可以将其修复为“33,334 字节”吗?
【问题讨论】:
-
应该是“除了2、3、5以外的所有素数都可以表示为...”?
-
@MatrixFrog:当然,但是你的“解压例程”只会在处理压缩数据之前输出这 3 个。
-
最简洁的表示是英文短语“The first Million primes”。其中包含解压缩所需的所有信息。
标签: algorithm compression storage primes