返回给定单词所在的bucket编号



我正在做一个项目,我很难理解这一点。我有一个无序的地图,我把它命名为Hash

目标是提出两个独立的函数,返回给定单词所在的bucket编号。我知道有一个功能我可以做return Hash.bucket(word);之类的事情。但是,我在网上看到有人做了这个:

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

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

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

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

我不知道有什么不同的方法可以让我的脑海中浮现出水桶号码。

最新更新