我正在尝试开发一个系统,可以将我的字符串转换成唯一的整数值,例如单词“account”的加密数字值为0891,没有其他单词可以使用相同的转换过程转换为0891。这个系统不需要能够将生成的整数转换回字符串。
同时,它将依赖于单词结构规则,例如“accuracy”和“announcement”这样的单词将具有大于0891的生成数字,而“a”、“abacus”和“abbreviation”这样的单词将具有小于0891的生成数字。
此应用的目的类似于索引或主键。我之所以不使用递增索引是出于安全目的,因为索引依赖于数据集中的数据数量。
(例如)
[0] A, [1] B, [2] C, [3] D, [4] E, [5] F
上述字母各有对应的索引,E的索引为4
然而,如果数据突然增加或减少,那么将进行排序
[0] A, [1] AA, [2] AAB, [3] C, [4] D, [5] DA, [6] DZ, [7] E, [8] F
E现在的索引为7
每个单词必须有一个独特的整数等价值,并对应相应的权重。
我需要知道是否存在一种可以实现上述要求的算法。
任何帮助都将不胜感激。
String.hashCode()
保证为多个字符串生成相同的哈希码。 - Jim Mischel