有人可以简单地向我解释一下桶的概念。我理解fread
是一个数组数组,我不能为我的生活理解这第一个代码块,但在网上找不到任何解释Dict
的内容。如果你能逐行解释它会很棒。
num_buckets
答案 0 :(得分:2)
该代码旨在实现名为Hash table的数据结构。它是Ruby内置Hash
类的数据结构。
散列表使用键的散列作为索引。因为可能的索引数量有限,所以会发生冲突(即,不同的密钥具有相同的散列)。 Separate chaining是解决冲突的常用方法。密钥插入桶中。 num_buckets
这里是桶的数量。具有相同散列的不同密钥位于同一个存储桶中。
与Wikipedia单独链接的图像: