> 生活
数据结构哈希表怎么画(数据结构哈希表在第几章)
导语:数据结构--哈希表
1.什么是哈希表?
是一种数据结构,提供了快速的插入和查找操作,基于数组实现。
2.哈希化
2.1 直接将关键字作为索引。
当索引值不再为int型时,大多数索引值是string类型。
2.2 将单词转换为索引。
2.2.1 将字母转换成ASCII码,然后进行相加。
此种方式,当key的哈希码相同时,就会出现不同的key找到同一个值的问题,比如abc和bbb的哈希编码相同。而且重复的概率非常高。
2.2.2 幂的连乘
里
连成之后的数是非常大的,有可能超出int的范围,所以需要压缩。
2.2.3 压缩可选值
可当key的值很长时,hashVal的值是通过幂的连乘得到的,这个值会越来越大,而hashVal为int 或者long类型都是不合适的,使用BigInteger类型。
3.压缩后仍然可能出现问题
冲突,不能保证每个单词都映射到数组的空白单元。
解决办法:开放地址法
链地址法
免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请与我联系,一经查实立刻删除内容。本文内容由快快网络小舻创作整理编辑!