首页 > 编程知识 正文

如何计算字符串的哈希值,推荐使用的安全字符串函数

时间:2023-05-06 08:05:43 阅读:250792 作者:2161

1 unsigned int BKDRHash(char *str) 2 { 3 unsigned int seed = 131; // 31 131 1313 13131 131313 etc.. 4 unsigned int hash = 0; 5 6 while (*str) 7 { 8 hash = hash * seed + (*str++); 9 }10 11 return (hash & 0x7FFFFFFF);12 } 1 unsigned int APHash(char *str) 2 { 3 unsigned int hash = 0; 4 int i; 5 6 for (i=0; *str; i++) 7 { 8 if ((i & 1) == 0) 9 {10 hash ^= ((hash << 7) ^ (*str++) ^ (hash >> 3));11 }12 else13 {14 hash ^= (~((hash << 11) ^ (*str++) ^ (hash >> 5)));15 }16 }17 18 return (hash & 0x7FFFFFFF);19 }
智能防疫解决方案:UAILAB推出以“数字哨兵”为首的智能防疫解决方案

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。