Java 基于Trie实现的Hash函数

Java 基于Trie实现的Hash函数,java,dictionary,hash,trie,Java,Dictionary,Hash,Trie,我应该建立一个字典Trie并使用节点。我需要将它们存储在哈希表中。我需要创建一个散列函数来将节点放置在正确的位置。如何将字符串转换为哈希函数中的整数?一个常见的哈希示例,虽然不一定是一个好的示例,但它是将字符串中每个字符的ascii值之和乘以哈希表的大小。您可以尝试kart-trie。它使用一种巧妙的密钥交替算法在二叉树中隐藏trie数据结构: 长度为klen的键k中位置pos处的转换位可计算为: 无符号整数位(大小\u t pos,无符号字符常量*k,大小\u t klen){ 如果(pos/

我应该建立一个字典Trie并使用节点。我需要将它们存储在哈希表中。我需要创建一个散列函数来将节点放置在正确的位置。如何将字符串转换为哈希函数中的整数?

一个常见的哈希示例,虽然不一定是一个好的示例,但它是将字符串中每个字符的ascii值之和乘以哈希表的大小。

您可以尝试kart-trie。它使用一种巧妙的密钥交替算法在二叉树中隐藏trie数据结构:

长度为klen的键k中位置pos处的转换位可计算为:

无符号整数位(大小\u t pos,无符号字符常量*k,大小\u t klen){
如果(pos/(字符位+1)>=klen)返回0;
if(pos%(字符位+1)==0)返回1;
返回((无符号整数)k[pos/(字符位+1)]>>(字符位-pos%(字符位+1))&(无符号整数)1;

}

。您应该在询问之前进行搜索…哈希函数字符串已经有什么问题?