ChinaUnix.net
相关文章推荐:

MPQ中的Hash算法

昨天在用代码实现一个hash算法的时候,突然想到,为什么除留余数法中除数要用质数?虽然各种教科书上都说质数可以减少地址冲突,但为什么会这样?我写了一小段代码,测试了一下,结果是除数是不是质数都没关系。为简单,桶数和除数是一样的。很困惑,请高手指点。 #include #include #include using namespace std; typedef vector vInt; int main() { int BucketNum = 10; int tmpBuc...

by bluetune - C/C++ - 2006-10-18 11:49:00 阅读(2854) 回复(4)

相关讨论

Netfilter的连接跟踪表,是通过一个hash表来维护的,其首先把一个数据包根据来源/端口/协议转换成一个"tuple",然后根据这个"tuple"来计算hash值: [code]static u_int32_t hash_conntrack(const struct ip_conntrack_tuple *tuple) { #if 0 dump_tuple(tuple); #endif return (jhash_3words(tuple->src.ip, (tuple->dst.ip ^ tuple->dst.protonum), (tuple->src.u.all | (tuple->d...

by 独孤九贱 - C/C++ - 2006-07-23 15:34:51 阅读(1530) 回复(1)

函数原型 unsigned int find_index(char* c); 假设存在一哈希表 vector hash_table[hash_LEN]; 注意形参有可能为UNICODE,此处为简单表示为字符型,要求查找速度要快,且尽量避免冲突。 如果有好的算法欢迎贴上。

by nbaloverme - C/C++ - 2005-12-09 22:28:10 阅读(2292) 回复(3)

我要做一个通过用户名username做hash,建立3层目录和文件来存放user信息,请问各位是否有一个好的算法能将username均匀的分配到个子目录里?

by genii - Java - 2004-03-24 15:28:30 阅读(1170) 回复(0)

字符串hash算法比较 链表查找的时间效率为O(N),二分法为log2N,B+ Tree为log2N,但hash链表查找的时间效率为O(1)。设计高效算法往往需要使用hash链表,常数级的查找速度是任何别的算法无法比拟的,hash链表的构造和冲突的不同实现方法对效率当然有一定的影响,然而hash函数是hash链表最核心的部分,本文尝试分析一些经典软件中使用到的字符串hash函数在执行效率、离散性、空间利用率等方面的性能问题。 1 概述 链表查找的时间效...

by 061107 - php文档中心 - 2007-12-27 13:22:23 阅读(919) 回复(0)

字符串hash算法比较 1 概述 链表查找的时间效率为O(N),二分法为log2N,B+ Tree为log2N,但hash链表查找的时间效率为O(1)。设计高效算法往往需要使用hash链表,常数级的查找速度是任何别的算法无法比拟的,hash链表的构造和冲突的不同实现方法对效率当然有一定的影响,然 而hash函数是hash链表最核心的部分,本文尝试分析一些经典软件中使用到的字符串hash函数在执行效率、离散性、空间利用率等方面的性能问题。 2 经典字...

by 061107 - php文档中心 - 2007-12-27 09:16:03 阅读(713) 回复(0)

一个hash算法的实现 http://www.cublog.cn/u/12592/index.html * Copyright 2006 David Crawshaw, released under the new BSD license. * Version 2, from http://www.zentus.com/c/hash.html */ #include #include #include #include "hash.h" /* Table is sized by primes to minimise clustering. See: http://planetmath.org/encyclopedia/GoodhashTablePrimes.html */ static const unsigned int sizes[] = {...

by 061107 - php文档中心 - 2007-12-27 09:41:53 阅读(859) 回复(0)

我有一个文本文件,里面存地电话号码,一行存一个,\N换行 如 13789022321 13589022325 13689022323 15989022323 15989022323 13589022325 13689022323 里面存在相同的号码 我要踢出相同的号码,只保留一个,怎么写这个算法, 比较快的算法

by ltaotao007 - C/C++ - 2007-06-24 00:43:10 阅读(2647) 回复(3)

[code] #define mix(a,b,c) \ do { \ a -= b; a -= c; a ^= (c >;>; 13); \ b -= c; b -= a; b ^= (a << 8); \ c -= a; c -= b; c ^= (b >;>; 13); \ a -= b; a -= c; a ^= (c >;>; 12); \ b -= c; b -= a; b ^= (a << 16); \ c -= a; c -= b; c ^= (b >;>; 5); \ a -= b; a -= c; a ^= (c >;>; 3); \ b -= c; b -= a; b ^= (a << 10); \ c -= a; c -= b; c ^= (b >;>; 15); \ } wh...

by longfei - C/C++ - 2005-05-28 23:03:19 阅读(2478) 回复(7)

请教: 如果有好多的字符串(包括汉字)要去匹配一个字符串(即检查有没有在字符串中包括),为了实�中噬系奶岣撸蚁胧褂�hash 算法,请问有什么好的办法?这个也算是一种检索吧?

by birdielu - C/C++ - 2004-03-11 21:24:02 阅读(2021) 回复(3)