chapter14-集合——(List-HMap)——day18

目录

536-HMap阶段小结

537-HMAp底层机制

538-HMAP源码解读

539-HMap扩容树化触发


重点在于hashmap的扩容机制

它内部是k-v对方式存储数据,Hash$node类型;相同的key,就会覆盖

Hash$node类型实现了mapentry接口

扩容条件,看是否到临界值,每次扩两倍

//0->16(12) ->32(24) -> 64(64*0.75=48)->128 (96)->

树化条件,链表超过8+整个table超过64

536-HMap阶段小结

537-HMAp底层机制

538-HMAP源码解读

539-HMap扩容树化触发

没有重写equals方法 所以不会有相同对象

补充一下,这里就算是重写了equels方法也是12个,因为是引用数据类型,hash值是不同的

3.根本原因在于底层判断机制:(e.hash & oldCap) == 0

  1. 当加入的结点Node数量 `Size >(加载因子*table容量)`时,立即扩容(tips:等于时不扩容 / node数量不仅限于table表上的,还有链表&树里的)
相关推荐
知乎的哥廷根数学学派13 小时前
基于多物理约束融合与故障特征频率建模的滚动轴承智能退化趋势分析(Pytorch)
人工智能·pytorch·python·深度学习·算法·机器学习
我是一只小青蛙88813 小时前
位图与布隆过滤器:高效数据结构解析
开发语言·c++·算法
eso198313 小时前
白话讲述监督学习、非监督学习、强化学习
算法·ai·聚类
chen_jared13 小时前
反对称矩阵的性质和几何意义
人工智能·算法·机器学习
海天一色y13 小时前
python---力扣数学部分
算法·leetcode·职场和发展
一起努力啊~13 小时前
算法刷题--哈希表
算法·面试·散列表
willingli13 小时前
c语言经典100题 61-70题
c语言·开发语言·算法
我是小疯子6613 小时前
深入解析C++右值引用与移动语义
java·开发语言·算法
源代码•宸14 小时前
Golang原理剖析(Map 源码梳理)
经验分享·后端·算法·leetcode·golang·map
Narrastory14 小时前
手把手实现蚁群算法:从数学原理到代码实践
算法