我正在做一个项目,我很难理解这一点。我有一个无序的地图,我把它命名为Hash
。
目标是提出两个独立的函数,返回给定单词所在的bucket编号。我知道有一个功能我可以做return Hash.bucket(word);
之类的事情。但是,我在网上看到有人做了这个:
if(Hash.count(word)!=0)
return Hash.bucket(word);
他们为什么将其与0进行比较?
此外,除了使用.bucket()
,我还有其他方法可以做到这一点吗?
据我所知,他们将其与零进行了比较,以便您能够确保它确实存在于地图中。如果您对尚未放入映射中的内容执行return Hash.bucket(word);
,它仍然会返回密钥哈希对应的bucket。该函数执行此操作时不检查该单词是否已存在于映射中。if语句确保只有当你知道它已经在桶里时,你才能得到它的桶。
我不知道有什么不同的方法可以让我的脑海中浮现出水桶号码。