我在这里看到了有关使用gperf的答案,但是,我更愿意根据我为strings
的域为固定长度域创建的证明推出自己的答案<= 200
根据我从wolfram的计算,我得到~7.9 x 10^374
总排列。因此,我的思路是如果我有一个2048
位散列函数(3.2 x 10^616
)我应该能够处理我需要处理的整个字符串。我的问题是,如何证明由于所有长度为200或更小的字符串的限制,我最终生成的哈希实现将是完美的?通过固定长度输入验证完美散列函数
1
A
回答
3
长度为200个字符的字符串只有200 * 8 = 1600位。如果2048位散列可以满足您的需要,那么您可以将字符串位用作完美散列。身份散列函数是完美的,因为它将每个输入映射到不同的散列值(显然,因为没有映射)。
+0
我选择了2048,因为它是容纳宇宙的高于1024的下一个值。这是否会产生意想不到的后果? – Woot4Moo
相关问题
- 1. 完美散列函数的定义
- 2. 验证输入长度
- 3. 完美的散列函数和福利
- 4. 插入固定长度的输入
- 5. 完美的散列函数是否保证没有碰撞?
- 6. 输入验证通过javascript
- 7. 给定了一个完美的散列函数,计算包含
- 8. int长度的用户输入验证
- 9. 在python中为url参数生成固定长度的散列
- 10. javascript函数输入验证
- 11. AngularJs验证多个长度的输入长度
- 12. Pentaho勺 - 验证固定宽度输入文件格式
- 13. 大整数整数的完美散列函数[1..2^64-1]
- 14. 固定长度BitArrays阵列
- 15. 使用列长度验证
- 16. 表单输入长度从下拉列表验证
- 17. 固定长度
- 18. 我想找到一个散列函数生成散列与给定长度
- 19. 检查完美迷宫的输入验证
- 20. jQuery验证 - 将输入限制为3个特定长度
- 21. 通过验证创建一个完美的表格
- 22. 将HTML输入限制为固定长度数字
- 23. 验证散列密码的长度(注册)php
- 24. 保留最小完美散列函数的顺序
- 25. 8乘8板的完美散列函数?
- 26. 验证长度
- 27. 验证JSON数组到特定长度
- 28. 固定长度的输入形式的跨度大小
- 29. 的NodeJS散列字符串到整数数组固定长度2
- 30. Laravel验证通过空白输入
@interjay它有用的是更多的理论概念:)。所以你建议,如果我把每一个字符串,我把它转换为一个字节[]然后应用填充方案,我应该有一个没有碰撞的解决方案?如果是这种情况,我该如何证明? – Woot4Moo