我需要一个散列函数H(X),它满足以下条件:手动散列函数
(1)输入大约10个数字,输出大约10个数字。 (2)如果你改变X即使只是一个数字,你也会得到一个完全不同的H(X)。
(3)易于计算手动。人们将手工计算。我需要他们能够快速,无误地完成任务。
谢谢你的创意!
编辑:“散列”我的意思是“单向散列”的精神。那就是 - 给定H(X),应该很难找到X的可能值。对于人来说很难。
编辑:这是干什么用的?这是考试。学生将做计算并获得数字作为答案。我希望他们在测试过程中能够知道他们是否正确答案。所以这个想法是:将所有答案连接到一个数字X.然后计算H(X)。然后使用H(X)逐个解码一些代码,并获得一条表示您的正确性的短消息。我不希望他们在得到第一个答案后能够找出第四个答案。
如果您的输入和输出尺寸相同,为什么需要散列函数? – 2010-11-16 01:03:30
hm ...你如何快速计算10位数字的操作?计算器是否允许?如果您使用%运算符,则一个大的素数会起作用... – irrelephant 2010-11-16 01:05:59
假定有十进制数字,将X.Bam的每个数字加1。不同的价值,保证没有碰撞。不是真正的哈希。 – jball 2010-11-16 01:08:14