DHP算法中如何选择模数来构建哈希表?

数据挖掘 数据挖掘
2022-02-24 09:01:15

我试图理解 DHP(直接散列和修剪)算法,但我一直在解释模数的选择。论文在第 7 页显示了使用哈希函数的示例:h{{x y}) = ((order of x)*10 + (order of y)) mod 7

我的问题是:

  1. 以这种方式定义功能的基础是什么?
  2. 如何选择模数(本例中为 7)?

在此处输入图像描述

1个回答
  1. 以这种方式定义函数的一个可能原因是它适用于他们的示例。这是一篇学术论文,因此它鼓励人们找到一种适用于特定数据集的新颖解决方案。在论文中,它是一个合成数据集。

  2. 在构建哈希表时,最佳做法是选择一个素数(在本例中为 7),以在使用模运算符时最大限度地减少冲突次数。小素数的事实是他们构建玩具系统的线索。