【发布时间】:2017-07-12 21:27:49
【问题描述】:
所有输入都是小写英文字母。
HashString("ab")= should be unique value
HashString("ba")= should give me the same value as above
我尝试为每个字母分配一个数字,但结果证明是错误的逻辑
我的尝试产生了以下输出。
HashString("ab")=3
HashString("ba")=3 this is correct.
HashString("c")=3 this is wrong.
【问题讨论】:
-
可以输入的最长的字符串是多少?
-
您应该明确要求是什么。你的问题只提到了输入是小写字母的约束,函数应该是顺序不变的,“ba”和“c”不应该冲突,这是相当少的信息。
-
为什么不对输入字符串中的字符进行排序,然后使用任何标准的哈希算法?
-
任何可交换的?
xor(hash(x), hash(reverse(x)))