码迷,mamicode.com
首页 >  
搜索关键字:hash    ( 10449个结果
POJ 3156 - Interconnect (概率DP+hash)
题意:给一个图,有些点之间已经连边,现在给每对点之间加边的概率是相同的,问使得整个图连通,加边条数的期望是多少。此题可以用概率DP+并查集+hash来做。用dp(i,j,k...)表示当前的每个联通分量的点数分别是i,j,k...(连通分量的个数不固定)时,加边的期望。这样以dp(i,j,k)为例分...
分类:其他好文   时间:2014-05-16 06:23:26    阅读次数:312
BKDRHash算法的初步了解
字符串hash最高效的算法, 搜了一下, 原理是:字符串的字符集只有128个字符,所以把一个字符串当成128或更高进制的数字来看,当然是唯一的这里unsigned不需要考虑溢出的问题, 不过周神说:碰撞率很小是因为n阶多项式最多n个根. 也是有道理的.最后 hash & 0x7FFFFFFF 只是为...
分类:其他好文   时间:2014-05-15 16:53:27    阅读次数:401
HDU 1693 Eat the Trees
插头DP,多条回路求回路数。 可以当作模版来记。注重理解轮廓线。 #include #include #include #include using namespace std; const int HASH=10007; const int STATE=5000; //状态数 const int MAXD=15; int code[MAXD],maze[MAXD][MAXD];...
分类:其他好文   时间:2014-05-15 11:23:33    阅读次数:344
一致性哈希算法(consistent hashing)例子+测试。
一个简单的consistent hashing的例子,很容易理解。 首先有一个设备类,定义了机器名和ip: public class Cache { public String name; public String ipAddress; } 然后是主要的实现: public class Shard { //hash 算法并不是保证绝对的平衡,如果 cache 较少的话,...
分类:其他好文   时间:2014-05-15 06:56:41    阅读次数:370
SHA-1算法c语言实现
安全哈希算法(Secure Hash Algorithm)主要适用于数字签名标准 (Digital Signature Standard DSS)里面定义的数字签名算法(Digital Signature Algorithm DSA)。对于长度小于2^64位的消息,SHA1会产生一个160位的消息摘要。当接收到消息的时候,这个消息摘要可以用来验证数据的完整性。在传输的过程中,数据很可能会发生变化,...
分类:编程语言   时间:2014-05-15 05:42:58    阅读次数:641
leetcode第一刷_ First Missing Positive
未排序数组,O(N)时间,常数空间,这道题让我非常清晰的感觉到算法的魅力。 先想一下如果允许用额外空间的话,我们会怎么做,对,我们会建立一个hash表,然后从头到尾的扫描数组,等等,怎么映射呢?有n个数,要找第一个消失的正正整数,那么这个消失的正整数的取值范围是什么呢?[1, n+1],之所以包含n+1是因为如果这n数正好是连续的前n个自然数。那我们就知道了,开一个长为n的哈希表,如果当前扫到得...
分类:其他好文   时间:2014-05-15 03:45:41    阅读次数:276
HDU 3377 Plan
插头DP。 从左上角到右下角,每个格子都有Val,每个格子只能经过一次,可以不经过,求最大的分数之和。 #include #include #include #include using namespace std; const int MAXD=15; const int HASH=10007; const int STATE=1000010; int N,M; int maz...
分类:其他好文   时间:2014-05-15 03:43:02    阅读次数:175
链接法(chaining)构建散列表(hash table)(C++实现)
散列表(Hash table,也叫哈希表),是根据关键字(Key value)而直接访问在内存存储位置的数据结构。也就是说,它通过把键值通过一个函数的计算,映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数称做散列函数,存放记录的数组称做散列表。 一个通俗的例子是,为了查找电话簿中某人的号码,可以创建一个按照人名首字母顺序排列的表(即建立人名x到首字母F(x)的一个函数关系),在首...
分类:编程语言   时间:2014-05-15 02:27:50    阅读次数:497
OpenStack_Swift源码分析——Ring基本原理及一致性Hash算法
1、Ring的基本概念 Ring是swfit中最重要的组件,用于记录存储对象与物理位置之间的映射关系,当用户需要对Account、Container、Object操作时,就需要查询对应的Ring文件(Account、Container、Object都有自己对应的Ring),Ring 使用Region(最近几个版本中新加入的)、Zone、Device、Partition和Replica来维护这些信...
分类:其他好文   时间:2014-05-14 15:22:15    阅读次数:1213
leetcode第一刷_Anagrams
今天再看这个题时,死活想不起这个单词是什么意思,查了字典都不知道,真晕了。 这个单词直译是颠倒顺序所形成的单词,实际上就是从集合中找出所有是由一组字母形成的那些单词,这种可以由很多组,即只要这组字母形成的字典中的单词多于1个,就要把这些单词输出出来。 怎么做呢?思路还是很简单的,要找出是由一组字母形成的单词,显然应该知道每一个单词是由哪些字母形成的,这当然可以建一个hash表,每次都比对has...
分类:其他好文   时间:2014-05-14 15:12:04    阅读次数:296
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!