【问题标题】:how to code a string to a unique number and decode it如何将字符串编码为唯一数字并对其进行解码
【发布时间】:2015-04-23 11:57:03
【问题描述】:

有没有办法将一个长字符串编码为一个唯一的数字(整数),然后将此数字解码为原始字符串? (我的意思是减小长字符串的大小)

【问题讨论】:

  • 将字符串放入DB表中,并使用对应的数字ID
  • 听起来有点像Huffman-Coding
  • 使用 Hashmaps 将您的字符串链接到一个整数。您必须将其设为您自己的编码以使其“独一无二”
  • 使用 DB,我应该同时保存字符串和 id。所以大小大于原始字符串!!!
  • 您的意思是如何在不丢失信息的情况下将 1-Kb 字符串压缩为 4-Byte 整数?有了这样的算法,你会变得富有:-)

标签: string hash decode


【解决方案1】:

简单的答案是否定的。

复杂的答案是也许。

您正在寻找的是压缩,压缩可以减小字符串的大小,但不能保证它可以做到多小。特别是你永远不能保证能够将它放入某个大小的整数中。

“散列”之类的概念可能会帮助您做您想做的事情,具体取决于您尝试使用此数字做什么。

或者,如果您在很多不同的地方使用相同的字符串,那么您可以将其存储一次,然后将引用/指针传递给该字符串的单个实例。

【讨论】:

  • 有没有像 md5 hashing 这样的解码方式?
  • @user3212159 您可以对字符串进行哈希处理。但是,您无法反转它并从哈希返回到字符串。就是做不到。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-27
  • 1970-01-01
  • 1970-01-01
  • 2019-08-18
  • 2011-07-02
  • 1970-01-01
相关资源
最近更新 更多