哈希表

  • 哈希函数
    简单讲,将一个关键字通过哈希函数计算后转换为数组的下标将关键字对应的内容存贮在相应连续的数组空间里,查找时通过关键字哈希化后得到相应的数组下标可以快速的访问到内容。所以哈希表的快速性实际是借组了数组的快速性。通过哈希函数进行哈希化为数组下标时可能会出现两个不同关键字哈希化出两个相同的数组下标的情况,称为地址冲突
  • 开放地址法
    即当哈希化后地址冲突时,通过系统的方法开辟新的地址,因为通常情况下,哈希化对应的数组有一半是空的。当冲突时寻找下一个数组下标是否为空,如果为空就保存在下一个地址否则继续寻找下一个地址……
  • 链地址法
    即当哈希化后地址冲突时,冲突的地址保存一个链表的链头,冲突元素就插入链表中,Java集合框架中HashMap就是运用这种方法。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章