数据结构 |
您所在的位置:网站首页 › 数据结构散列存储是什么 › 数据结构 |
Hash Table 常用于频繁进行 key/value 模式的查找中。(查找模式,如匹配查找) 哈希表最大的优点在于查找速度快,但存储时可能发生collision(冲突)。 哈希表大多使用open addressing(开放定址法)来解决collision,此时search的时间复杂度计算公式为: 1/( 1 - n/m )其中,n与m分别表示存储的记录数与哈希表的长度,即装填因子( load factor ) 、负载因子n/m 故,若哈希表半满,即 n/m >= 1/2,则每次的search次数可能会 >= 2 因此,为了保证Hash Table在 key/value 查找模式中的优势,一般,其存储效率不会超过50%。 总结: 1、超过50%, 将增加查找次数,可能大于2 1、散列表(Hash table,也叫哈希表),直接根据关键码值(Key value)进行访问得到查询结果的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。 2、查找和插入的速度较快,理论上, 哈希表插入和查找操作的时间复杂度都是O(1)。 3、根据散列函数来寻址,存储时可能发生冲突(不同的值通过散列函数映射后可能得到同一个结果值) 4、有多种解决冲突的方法 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |