0

我正在做一个项目,但我无法理解这一点。我有一张无序的地图,我给它命名Hash

目标是提出两个单独的函数,它们返回给定单词所在的桶号。我知道对于一个功能,我可以做类似return Hash.bucket(word);但是,我在网上看到有人这样做:

if(Hash.count(word)!=0)
    return Hash.bucket(word);

他们为什么将其与0进行比较?

另外,除了使用之外,我还有其他方法可以做到这一点.bucket()吗?

4

1 回答 1

1

据我了解,他们将其与零进行了比较,以便您能够确保它确实存在于地图中。如果您return Hash.bucket(word);使用尚未放入地图的内容,它仍将返回密钥哈希对应的存储桶。该函数执行此操作时不检查该单词是否已存在于地图中。if 语句确保只有在您知道它已经在其中时才能获得它的存储桶。

我不知道有什么不同的方法可以让我的头顶上的桶号。

于 2020-05-11T06:37:06.213 回答