Chinaunix首页 | 论坛 | 博客
  • 博客访问: 81525
  • 博文数量: 5
  • 博客积分: 817
  • 博客等级: 准尉
  • 技术积分: 208
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-19 16:24
文章存档

2012年(3)

2011年(1)

2008年(1)

我的朋友

分类: C/C++

2012-10-19 14:29:34

unsigned long hash(const char *name,size_t len)
{
unsigned long h=(unsigned long)len;
size_t step = (len>>5)+1;
for (size_t i=len; i>=step; i-=step)
    h = h ^ ((h<<5)+(h>>2)+(unsigned long)name[i-1]);
return h;
}
阅读(803) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~