Data structures 关键范围大小<;10,每个数字∈;散列函数的[0,3]

Data structures 关键范围大小<;10,每个数字∈;散列函数的[0,3],data-structures,hash,Data Structures,Hash,我正在网上学习哈希表 1.散列函数 哈希函数是哈希表中最重要的组成部分,用于将密钥映射到特定的bucket。在前一篇文章的示例中,我们使用y=x%5作为哈希函数,其中x是键值,y是分配的bucket的索引 哈希函数将取决于键值的范围和存储桶的数量 下面是一些哈希函数的示例: 设计哈希函数是一个公开的问题。其思想是尽可能将密钥分配给bucket作为统一的。理想情况下,一个完美的散列函数将是键和bucket之间的一一映射。然而,在大多数情况下,哈希函数不是完美的,它是存储桶数量和存储桶容量之间的

我正在网上学习哈希表

1.散列函数
哈希函数是哈希表中最重要的组成部分,用于将密钥映射到特定的bucket。在前一篇文章的示例中,我们使用y=x%5作为哈希函数,其中x是键值,y是分配的bucket的索引

哈希函数将取决于
键值的范围
存储桶的数量

下面是一些哈希函数的示例:

设计哈希函数是一个公开的问题。其思想是尽可能将密钥分配给bucket作为
统一的
。理想情况下,一个完美的散列函数将是键和bucket之间的一一映射。然而,在大多数情况下,哈希函数不是完美的,它是
存储桶数量
存储桶容量
之间的折衷

提及

size < 10, each number ∈ [0, 3]
尺寸<10,每个数字∈ [0, 3]

[0,3]
是什么意思?

它的意思是从零到三,或者包括[0,1,2,3]。

那么为什么
4**0+4**1+4**4?
如果我们计算它们,那里有四个数字,就像我们计算[0,1]时有两个二进制数字一样。数字是标签,我们可以在[apple、banana、cherry、grape]中标记这些系统,并根据类似的系统定义一个哈希函数。为什么不直接使用
number=2
number=4
。从某种意义上说,我可以说,它的数学符号是你必须习惯的。在另一个例子中,我会说具体的数字是多少?我们知道在这种情况下你的意思。如果你递给我一张有整数数组大小的空白纸