当前位置: 首页 > news >正文

找人做网站骗局/东莞网络科技公司排名

找人做网站骗局,东莞网络科技公司排名,明天汽油价格调整多少,网站建设课程设计心得体会快速回答:哈希表的索引是通过h&(n-1)计算的。n是底层数据的容量;n-1和某个哈希值做&运算,相当于截取了最低的四位,如果数组的容量很小,只取h的低位很容易导致哈希冲突。 通过异或操作将h 的低位引入高位可以增…

快速回答:哈希表的索引是通过h&(n-1)计算的。n是底层数据的容量;n-1和某个哈希值做&运算,相当于截取了最低的四位,如果数组的容量很小,只取h的低位很容易导致哈希冲突。

通过异或操作将h 的低位引入高位可以增加哈希值的随机性,从而减少哈希冲突。

解释:

以初始⻓度 16 为例,16-1=15。2 进制表示是 0000 0000 0000 0000 0000 0000 0000 1111 。只取最后 4 位相等于哈希值的⾼位都丢弃了。

⽐如说 1111 1111 1111 1111 1111 1111 1111 1111,取最后 4 位,也就是 1111。1110 1111 1111 1111 1111 1111 1111 1111,取最后 4 位,也是 1111。

不就发⽣哈希冲突了吗?

这时候 hash 函数 (h = key.hashCode()) ^ (h >>> 16) 就派上⽤场了。

将哈希值⽆符号右移 16 位,意味着原哈希值的⾼ 16 位被移到了低 16 位的位置。这样,原始哈希值的⾼ 16 位和低 16 位就可以参与到最终⽤于索引计算的低位中。

选择 16 位是因为它是 32 位整数的⼀半,这样处理既考虑了⾼位的信息,⼜没有完全忽视低位原本的信息,从⽽达到了⼀种微妙的平衡状态。

举个例⼦(数组⻓度为 16)。

  • 第⼀个键值对的键:h1 = 0001 0010 0011 0100 0101 0110 0111 1000
  • 第⼆个键值对的键:h2 = 0001 0010 0011 0101 0101 0110 0111 1000

如果没有 hash 函数,直接取低 4 位,那么 h1 和 h2 的低 4 位都是 1000,也就是说两个键值对都会放在数组的第8 个位置。

来看⼀下 hash 函数的处理过程。

①、对于第⼀个键 h1 的计算:

原始: 0001 0010 0011 0100 0101 0110 0111 1000

右移: 0000 0000 0000 0000 0001 0010 0011 0100

异或: -------------------------------------------------

结果: 0001 0010 0011 0100 0100 0100 0100 1100

②、对于第⼆个键 h2 的计算:

原始: 0001 0010 0011 0101 0101 0110 0111 1000

右移: 0000 0000 0000 0000 0001 0010 0011 0101

异或: -------------------------------------------------

结果: 0001 0010 0011 0101 0100 0100 0100 1101

通过上述计算,我们可以看到 h1 和 h2 经过 h ^ (h >>> 16) 操作后得到了不同的结果。现在,考虑数组⻓度为 16 时(需要最低 4 位来确定索引):

对于 h1 的最低 4 位是 1100 (⼗进制中为 12)

对于 h2 的最低 4 位是 1101 (⼗进制中为 13)

这样, h1 和 h2 就会被分别放在数组的第 12 个位置和第 13 个位置上,从⽽避免了哈希冲突。

http://www.lryc.cn/news/580840.html

相关文章:

  • 直播间网站开发制作/怎样进行seo
  • 网站开发好吗/沈阳cms建站模板
  • 怎么建网站教程视频app/片多多可以免费看电视剧吗
  • 专门做app的网站/长沙关键词优化公司电话
  • 藏文网站怎么做/西安百度竞价托管
  • 淘宝客网站建好了没有数据库/爱链网买链接
  • 深圳app开发公司有哪些/网站优化推广培训
  • php网站集成支付宝接口/合肥网站优化搜索
  • 怎么让自己做的网站让别人看到/千万别在百度上搜别人名字
  • 菏泽外贸网站建设/seo关键词优化平台
  • seo诊断报告示例/青岛 google seo
  • 哪些网站可以做免费推广/semester at sea
  • 网站开发的重难点/百度推广北京总部电话
  • 做网站还需要续费/网站建设的流程是什么
  • 做网上竞彩网站合法吗/重庆seo务
  • 用javascirpt做的网站/长沙seo袁飞
  • b2b网站页面设计特点/网络广告营销方案
  • 广安做网站的公司/北京如何优化搜索引擎
  • 网站空间搭建/百度快速seo软件
  • 建设企业网站收费/百度搜索资源平台
  • 迎访问中国建设银行网站-/如何查询网站收录情况
  • 网站说服力营销型网站策划 pdf/广东网站营销seo方案
  • 狼雨seo网站排名查询/谷歌浏览器官网下载手机版
  • 浦东新区专业做网站/seo经理招聘
  • 地方政府如何建设政府网站/班级优化大师app下载学生版
  • 做淘客网站要多大的服务器/百度广告投放公司
  • java 手机网站建设/iis搭建网站
  • 做网站代理需要办什么营业执照/搜索关键词排名优化
  • 网站建设和Java/网站设计费用明细
  • 做网站维护和客服需要学什么/百度云服务器官网