1

我尝试在谷歌上搜索一种算法来压缩/加密从 52 个字符到 40 个字符的短固定大小的字符串,但似乎找不到任何内容。

目标字符串是随机字母数字 [A-Z0-9] 例如“M5KS07VHN2X42JCY1PFHE1ZZGI2XUBDFAKQBEPFB7CH4SECXHJXL”

我已经尝试过 huffman 和 smaz ( https://github.com/antirez/smaz ") 并且都膨胀到原始字符串的大小。

有谁知道为此目的的好算法?

4

1 回答 1

6

对于 A-Z0-9,最简单的编码是简单地编码为每个字符 6 位(这可能会允许更多。52 个字符是 52 * 8 位,压缩字符串将是 52 * 6 = 39 字节。

编辑:稍微复杂一点的系统是使用 DEC 在其 PDP-11 和类似系统中使用的RADIX-50格式进行存储,通过对每个字符使用 40 的乘数来存储 16 位中的 3 个字符。我在学生时代就使用过这个系统,学校有一台运行 RSTS/E 的 PDP-11。

于 2013-05-15T12:58:46.240 回答