哈希表,是根据关键字(Keyvalue)而直接访问在内存存储位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数称做散列函数,存放记录的数组称做散列表。(摘自维基百科)对不同的关键字可..
分类:
其他好文 时间:
2016-05-06 02:26:01
阅读次数:
440
参考文献: 1、Cuckoo Filter hash算法 2、cuckoo hash 用途: Cuckoo Hash(布谷鸟散列)。问了解决哈希冲突的问题而提出,利用较少的计算换取较大的空间。占用空间少,查询速度快。经常应用于Bloom Filter和内存管理中。之所以起这个名字是因为布谷鸟生性贪婪 ...
分类:
其他好文 时间:
2016-05-02 11:49:45
阅读次数:
432
所谓的基数排序原理就和哈希表极像,适合使用在待排序的数都处在一个比较小的范围内,开辟好一定的辅助空间,按照直接定址法,将辅助空间对应的位置的计数增加,最后排序的时候只要把之前建好的辅助数组遍历输出一遍就好了 基数排序又被称为桶排序,这里的代码例子是完成一个几位数的排序,可以看成先根据个位的数大小进行 ...
分类:
编程语言 时间:
2016-04-13 11:21:34
阅读次数:
178
头文件://1.用《负载因子》来减少哈希冲突**//2.用开辟《素数》个空间来减少哈希冲突**//3.用《线性探测》·《二次探测》·《string的特殊算法》来减少哈希冲突**//4.防止《数据冗余》//5.用头插法插入节点》》》》》》为什么?//6.用《伪函数》实现功能模块的复用还有《模板..
分类:
其他好文 时间:
2016-04-10 19:35:01
阅读次数:
325
可以实现快速定位查找数据思想一:开一个适当大小的数组,讲需要存入的数据%上数组的_capacity的到的数作为他存放的位置,如果这个位置被占了,则在他的下一个位置存放数据(不会找不到空位置,下面会说到)。思想二:存放在数组上的是一个结构体,结构体包含一个索引值Key,存..
分类:
其他好文 时间:
2016-04-04 07:00:21
阅读次数:
241
一、散列表的概念 本章介绍了散列表(or hash table)的概念、散列函数的设计及哈希冲突的处理。散列表(为了形象描述,我们通常叫槽)从表意上看是一种数据结构,但把它归为算法思想更为贴切。对于大部分的查找问题,使用散列表能达到O(1)的效率。现在很多大公司在面试大数据的题目时,解决方案里绝对....
分类:
编程语言 时间:
2015-10-16 13:21:37
阅读次数:
271
1.hash表简介:把任意长度的输入编程固定长度的输出,压缩映射。
2.解决哈希冲突的主要方法。...
分类:
其他好文 时间:
2015-08-25 16:36:39
阅读次数:
119
1.基本概念
散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。
2. 常用的构造散列函数的方法
散列函数能使对一个数据序列的访问过程更加迅速有效,通过散列函数,数据元素将被更...
分类:
系统相关 时间:
2015-08-18 12:06:27
阅读次数:
122
HDU 3973通过哈希函数将一个字符串转化为一个整数,通过特定的方式可以使得这个哈希值几乎没有冲突(这就是关键之处,几乎没有视为没有= =!, 其实也可以考虑实现哈希冲突时的处理,只是这道题没必要而已),然后使用线段树维护修改后的哈希值。因为输入的字符串只有26个,考虑使用一个大于等于26的素数p...
分类:
其他好文 时间:
2015-07-26 20:50:46
阅读次数:
156