【14】算法 (哈希)

散列表即哈希表:用的是数组支持按照下标随机访问数据的特性,是数组的一种扩展。

时间复杂度:O(1) 

散列函数: 对N取模,

哈希冲突:

  MD5用的hash算法,也会冲突

解决冲突 : 

  (1)探测(线性寻址)

  (2)链表(拉链)(JDK1.7采用链表法)(JKD1.8引入红黑树)

 

HashMap

结构:

  链表+红黑树

版本:

  JDK1.7  引用链表法

  JDK1.8  引入了红黑树,在链表大于8的时候(因为红黑树保持平衡要经过左旋,右旋,经过测试,小于8的时候,引入红黑树划不来)

posted @ 2020-09-07 16:34  欧阳图图的少年成长记  阅读(138)  评论(0编辑  收藏  举报