Java教程

java 哈希表入门

本文主要是介绍java 哈希表入门,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

什么是哈希表?

  • 一种数据结构
  • 建立在数组的基础之上,数组中的每个元素就是kv对
  • 数组查找的时间复杂度是o(1),所以哈希表查找也是比较快的

散列表(Hash table,也叫哈希表),是根据键(Key)而直接访问在内存存储位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数称做散列函数,存放记录的数组称做散列表。

为什么需要哈希表?

  • 加快查找速度

有哪些应用?

- HashMap

  • HashMap是基于数组来实现哈希表的,数组就好比内存储空间,数组的index就好比内存的地址;

  • HashMap的每个记录就是一个Entry<K, V>对象,数组中存储的就是这些对象;

  • HashMap的哈希函数 = 计算出hashCode + 计算出数组的index;

  • HashMap解决冲突:使用链地址法,每个Entry对象都有一个引用next来指向链表的下一个Entry;

  • HashMap的装填因子:默认为0.75;

参考

来吧!一文彻底搞定哈希表! - 知乎

java中HashMap与Hash表详解_风雨落-CSDN博客_java哈希表

这篇关于java 哈希表入门的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!