【发布时间】:2014-06-22 08:06:13
【问题描述】:
我想知道是否有办法将 20 个左右的大数字 (~10^8) 压缩成一个合理长度的字符串。例如,如果将数字存储为十六进制并连接起来,则它至少有 160 个字符长。我想知道是否有一种聪明的方法可以压缩数字并将它们取出。我正在考虑将序列 0-9 作为参考,并让输入字符串的一部分为
有没有更好的选择?
谢谢
【问题讨论】:
-
加密和压缩是两个不同的东西,你问的是什么? (如果是压缩,答案是“一般来说这是不可能的”。)
-
@OliCharlesworth 我应该问的是压缩而不是加密。为什么压缩通常是不可能的?
-
因为鸽巢原理。
-
这里的“字符串”是什么?它是一个可打印字符序列,还是一个字节序列?单个字符允许使用哪些值?一般的解决方案是在 Basis(number_of_different_values_for_each_character) 中表示您的输入值。
标签: algorithm compression