首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按Mid-Square对元素进行散列

按Mid-Square对元素进行散列
EN

Stack Overflow用户
提问于 2016-05-19 23:17:07
回答 1查看 1.1K关注 0票数 0

我正在为一个大小为10 (索引0-9)的散列表创建一个散列函数,并使用正方形方法对元素进行散列。问题是我不明白我应该使用1个中间数字还是2个数字,然后取其中的mod 10。问题是,如果我选择取2位中间数,然后取mod 10,如果平方数有3位数,则此方法将失败。那我要取哪两位数呢?如果我选择1个中间数字,那么当平方数有偶数个数字时,我就会有问题。我知道在这种情况下,中间的两个元素都是由原始数字的所有元素的贡献构成的。现在,我使用第{floor(n/2+1)}个数字。这种方式适用于三位数的平方数,当平方数没有偶数时。在数字中,它取中间两位的后一位。我想知道做这件事有什么更有效的方法?谢谢。

EN

回答 1

Stack Overflow用户

发布于 2016-06-02 18:31:27

我学到的正确方法是,如果得到的正方形的长度是奇数,则使用1位数,如果是偶数,则使用中间的2位数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37327507

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档