hashmap-- hash冲突

hash是什么?

关键字key和它的存储位置之间存在一种函数关系。这个函数我们称为为哈希函数。
就是把任意长度的输入,通过散列算法,变成固定长度的输出,这种是一种压缩映射.

hash冲突问题及解决方法

那么在这种情况下,不同的key可能会产生相同的散列值,即这种状况下他们对应的哈希数的值是相同的,因为值相同所以不可能由散列值确定唯一的输入值,这种情况就是哈希冲突。

key经过hash函数计算得到的内存地址值,但是该内存地址值已经有数据了,产生了冲突。如果两个不同对象的hashCode相同,这种现象称为hash冲突。

解决哈希冲突:

  • 开放定址法
  • 再哈希法
  • 链地址法
  • 建立公共溢出区
发布了58 篇原创文章 · 获赞 1 · 访问量 6883

猜你喜欢

转载自blog.csdn.net/chentaishan/article/details/102815909