易游网-易游模拟器

 找回密码
 立即注册
查看: 1980|回复: 0

[技术分享] 使用散列表要注意哪些事项?

[复制链接]

3382

主题

3401

帖子

38

积分

超级版主

Rank: 8Rank: 8

积分
38

技术达人

发表于 2021-1-13 13:54:49 | 显示全部楼层 |阅读模式
使用散列表要注意哪些事项?

①为什么要用散列表?
数组的特点是:寻址容易,插入和删除困难;
链表的特点是:寻址困难,插入和删除容易;
那么能不能综合两者的特性,做出一种寻址容易,插入和删除也容易的数据结构?答案是肯定的,这就是我们要了解的散列表,也叫哈希表

②什么是散列表?
散列表也叫hash表 ,是根据关键码值而进行直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射也叫散列函数,存放记录的数组叫散列表。
给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则成表M为Hash表,函数f(key)为哈希函数。

③散列表有哪些特点?
HashMap具有优秀的查找性能。根据key找到value,性能最好的算法!(没有之一)。无论数据多少,查找方法的性能始终如一!为了实现根据key告诉找到value,散列表提供了高性能查找算法。利用散列数组算法进行散列查找,性能很好。无论数据量有多少,都会在一个固定的时间,找回结果!甚至是在亿级别数据量上进行查找!凡是软件中需要查找根据key查找到value时,一定使用散列表。

④使用散列表的注意事项:
①key-value成对数据添加到散列表
②key不可以重复,value可以重复
③key-value规定为一个条目(Entry)
④散列表中散列数组的大小称为容量
⑤key-value数量称为size
⑥size/容量称为加载因子,要小于75%,如果大于75%,会自动扩容
⑦自动扩容会影响put添加性能,可以事先通过设置初始容量,提高put的性能
⑧散列表的默认初始容量是16,默认加载因子是75%,建议不要修改加载因子
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|易游网-易游模拟器 Copyright @2015-2021 ( 浙ICP备15028007号-1 )

GMT+8, 2024-4-29 03:26 , Processed in 0.037110 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表