联系hashgameCONTACT hashgame
地址:广东省广州市
手机:13988889999
电话:020-88889999
邮箱:admin@qq.com
查看更多
Rhashgamehashgame
你的位置: 首页 > hashgame > hashgames

深入理解JavaHASH GAME - Online Skill Game ET 300中HashCode方法

发布时间:2025-06-05 18:33:37  点击量:

  HASH GAME - Online Skill Game GET 300

深入理解JavaHASH GAME - Online Skill Game GET 300中HashCode方法

  s[i]是string的第i个字符,n是String的长度。那为什么这里用31,而不是其它数呢《Effective Java》是这样说的:之所以选择31,是因为它是个奇素数,如果乘数是偶数,并且乘法溢出的话,信息就会丢失,因为与2相乘等价于移位运算。使用素数的好处并不是很明显,但是习惯上都使用素数来计算散列结果。31有个很好的特性,就是用移位和减法来代替乘法,可以得到更好的性能:31*i==(i5)-i。现在的VM可以自动完成这种优化。

【返回列表页】

顶部

地址:广东省广州市  电话:020-88889999 手机:13988889999
Copyright © 2018-2025 哈希游戏(hash game)官方网站 版权所有 非商用版本 ICP备案编: