请问对散列技术有更好理解的人可以向我解释:是什么使该函数成为内射式散列函数?
下面的这个功能可能会为搜索树生成一个唯一的哈希键,
-仅包含1到99之间的值,并且
-包含每个可能的int不超过一次
真的有必要选择100作为乘数吗(我假设想法是100不在可能的树值范围内)?
例如31这样的质数也不会可靠地产生预期的输出吗?
int injectiveHashFunc(Tree b){
int[] po = postorder-tree-walk(b);
int key = 0;
for(k = 0; k < po.length; k++) {
key = key * 100 + po[k];
}
return key;
}