搜索
写经验 领红包
 > 生活

数据结构哈希表怎么画(数据结构哈希表在第几章)

导语:数据结构--哈希表

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.压缩后仍然可能出现问题

冲突,不能保证每个单词都映射到数组的空白单元。

解决办法:开放地址法

链地址法

免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请与我联系,一经查实立刻删除内容。本文内容由快快网络小舻创作整理编辑!