重学java 57.哈希表结构存储过程

别焦虑,生活无非见招拆招

------ 24.6.3

哈希表存储数据去重复的过程:

a.先比较元素的哈希值(重写hashCode),再比较内容(重写equals)

b.如果哈希值不一样,证明内容不一样,存

c.如果哈希值一样,再比较内容

如果哈希值一样,内容不一样(哈希碰撞,哈希冲突),存

如果哈希值一样,内容也一样,去重复

细节:

a.哈希表中的数组默认长度16,但是是第一次put的时候数组才会被初始化为长度为16的数组

b.哈希表中有一个加载因子: 0.75F含义是,数组存储达到百分之75的时候,扩容扩容2倍

c.如果链表长度达到 8**,** 并且数组容量大于等于 64的时候,链表会自动转成红黑树

d.如果删除元素,元素个数小于等于 6了,红黑树会转回链表

变量

default_initial_capacity :HashMap默认容量 16

default_load_factor :HashMap默认加载因子 0.75f

threshold :扩容的临界值 等于容量*0.75=12第一次扩容

treeify_threshold :链表长度默认值,转为红黑树 :8

min_treeify_capacity :链表被 化时最小的数组容量:64

相关推荐
wuyk5559 小时前
3.链表:用指针串联的动态数据结构
c语言·开发语言·数据结构·链表
郝学胜-神的一滴9 小时前
干货版《算法导论》17:二叉树核心原理、遍历逻辑与高阶实操全解
数据结构·c++·python·算法·计算机·编程
疯狂打码的少年10 小时前
【数据结构】二叉树的性质(五大性质+计算)
数据结构·笔记·算法
wabs66610 小时前
关于图论【A*算法 | 卡码网127.骑士的攻击的思考】
数据结构·算法·图论·卡码网·广搜的改进版
凉茶钱11 小时前
【数据结构】堆的应用
c语言·数据结构
间歇性努力持续性发呆的野生快乐选手12 小时前
栈的性质(进栈,出栈,访问)
数据结构·c++
m0_5474866612 小时前
《数据结构与算法》全套PPT课件2026(中国海洋大学)
数据结构·算法
旖旎夜光12 小时前
LeetCode 904:水果成篮(滑动窗口) —— 题解
数据结构·c++·算法·leetcode·滑动窗口
我变成萤火虫14 小时前
河南萌新联赛2026第(三)场:郑州轻工业大学
数据结构·c++·算法·贪心算法·stl·深度优先·哈希算法
白狐_79815 小时前
408数据结构第7章:B树①——基础概念与结构
数据结构·b树