哈希表 04 哈希冲突的处理 链地址法

链地址法概述

  • 一开始开辟一个M的空间的数组;
  • 将要存储的对象转换成整数,用M取模,结果会对应到数组中的一个索引;
  • 如果发生哈希冲突,取模的结果会指向数组中同一个索引;
  • 将产生哈希冲突的对象链入其对应索引挂接的对象的后面,形成一条链表;
  • 数组中的每个索引后都挂有一条链表,这就是所谓的链地址法(Separate Chain);
  • 当链表的长度超过一定程度后,Java会将其转换以红黑树,Java中的TreeMap,TreeSet都是基于红黑树实现的;

你可能感兴趣的:(哈希表 04 哈希冲突的处理 链地址法)