数字签名是什么? 1. 鲍勃有两把钥匙,一把是公钥,另一把是私钥。 2. 鲍勃把公钥送给他的朋友们 帕蒂、道格、苏珊 每人一把。 3. 苏珊给鲍勃写信,写完后用鲍勃的公钥加密,达到保密的效果。 4. 鲍勃收信后,用私钥解密,看到信件内容。 5. 鲍勃给苏珊回信,写完后用Hash函数,生成信件的摘要( ...
分类:
编程语言 时间:
2016-03-24 16:23:49
阅读次数:
193
以下内容基于jdk1.7.0_79源码; 基于哈希表的一个Map接口实现,存储的对象是一个键值对对象(Entry<K,V>); 基于数组和链表实现,内部维护着一个数组table,该数组保存着每个链表的表头结点;查找时,先通过hash函数计算hash值,再根据hash值计算数组索引,然后根据索引找到链
分类:
其他好文 时间:
2016-03-23 13:01:30
阅读次数:
181
红黑树的插入、查找、删除的平均时间复杂度为O(nlogn)。当基于假设:输入数据具有随机性时,hashtable插入、查找、删除时间复杂度O(l)。 STL里的hash函数是采用开链法解决碰撞问题,bucket 聚合体是一个vector,便于动态维护,vector里每个元素指向一个bucket li
分类:
其他好文 时间:
2016-03-23 10:13:23
阅读次数:
169
一、背景 1. 什么是缓存无底洞问题: 2. 缓存无底洞产生的原因: 键值数据库或者缓存系统,由于通常采用hash函数将key映射到对应的实例,造成key的分布与业务无关,但是由于数据量、访问量的需求,需要使用分布式后(无论是客户端一致性哈性、redis-cluster、codis),批量操作比如批
分类:
其他好文 时间:
2016-03-22 22:04:18
阅读次数:
202
数字签名是什么? 1. 鲍勃有两把钥匙,一把是公钥,另一把是私钥。 2. 鲍勃把公钥送给他的朋友们 帕蒂、道格、苏珊 每人一把。 3. 苏珊给鲍勃写信,写完后用鲍勃的公钥加密,达到保密的效果。 4. 鲍勃收信后,用私钥解密,看到信件内容。 5. 鲍勃给苏珊回信,写完后用Hash函数,生成信件的摘要(
分类:
编程语言 时间:
2016-03-19 19:28:22
阅读次数:
226
对于每种颜色,可以发现可以切的位置被分割成了若干段独立的区域。 给每个区域一个编号,将$m$种颜色的情况当成字符串来看,如果两个切口的字符串完全匹配,那么可以在这里切两刀。 可以构造hash函数,通过差分前缀和做到$O(n)$修改。 然后对于每一种相同的hash值,将切口按位置从小到大排序,通过组合
分类:
其他好文 时间:
2016-03-13 06:18:31
阅读次数:
248
1,一致性hash函数选择 crc32(范围为0到2的32次方),超过最大值,需要求模 ;md5,求得16进制数据,超过最大值,需要求模 ; 2,对cache server的虚拟节点的某些唯一属性或者属性组合使用第一条中提到的hash函数,将其散列到圆环上; 3,对数据的key使用与第二条相同的ha
分类:
其他好文 时间:
2016-03-10 22:03:25
阅读次数:
191
1.HashMap的内部实现机制 HashMap是对数据结构中哈希表(Hash Table)的实现,Hash表又叫散列表。Hash表是根据关键码Key来访问其对应的值Value的数据结构,它通过一个映射函数把关键码映射到表中一个位置来访问该位置的值,从而加快查找的速度。这个映射函数叫做Hash函数,
分类:
其他好文 时间:
2016-03-08 23:36:13
阅读次数:
177
一致性Hash分布算法分4个步骤:步骤1:将一个32位整数[0 ~ (2^32-1)]想象成一个环,0 作为开头,(2^32-1) 作为结尾,当然这只是想象。步骤2:通过Hash函数把KEY处理成整数。这样就可以在环上找到一个位置与之对应。步骤3:把Memcached服务器群映射到环上,使用Hash
分类:
编程语言 时间:
2016-02-18 19:36:27
阅读次数:
157
哈希码问:hashCode()方法是用来做什么的?答:hashCode()方法返回给调用者此对象的哈希码(其值由一个hash函数计算得来)。这个方法通常用在基于hash的集合类中,像java.util.HashMap,java.until.HashSet和java.util.Hashtable.问:...
分类:
编程语言 时间:
2016-01-15 20:26:29
阅读次数:
329