gpt4 book ai didi

c++ - CryEngine 的哈希函数是如何工作的?

转载 作者:搜寻专家 更新时间:2023-10-30 23:48:17 25 4
gpt4 key购买 nike

unsigned int HashString( const char *string ) {
const char* p;
unsigned hash = 40503;

for ( p = string; *p != '\0'; ++p ) {
hash += *p;
hash += ( hash << 10 );
hash ^= ( hash >> 6 );
}
hash += ( hash << 3 );
hash ^= ( hash >> 11 );
hash += ( hash << 15 );

return hash;
}

只是浏览他们的代码。不过,我以前从未见过这样的哈希函数。

我对按位运算不是很熟悉,我知道移位和屏蔽是如何工作的,但只是在基本场景中,比如检查位是否已设置。

这到底是做什么的?

最佳答案

阅读here以获得总体概述,并向下搜索“一次一次哈希”(由 Jenkins 撰写),这与此相吻合。

另见 Wikipedia entry , 在 this answer 中提到.

“这究竟是怎样的一个好散列?”不完全是。这些转变有点武断,主要来自一些启发式和经验测试。

关于c++ - CryEngine 的哈希函数是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16701855/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com