for 循环用于检查散列 table 值是否存在而不迭代

for loop for checking presence of hash table value not iterating

我正在制作 vector< vector > 类型的散列 table,在本例中它是一个字符串。在我用于检查给定单词是否在散列 table 中的函数中,我有一个 for 循环遍历碰撞向量检查给定单词是否存在。由于某种原因,for 循环没有迭代,b 总是 == 0。我已经多次检查 table[index].size() 的值是什么,它大于零。

        for( int b=0; b < table[index].size(); b++)
        {
            cout<< "b: "<< b << endl;

            if (table[index][b] == object)
            {
                return 1;
            }

            else
            {
                return 0;
            }
        }

您在每种情况下都从 for 循环返回。 所以它进行 1 次迭代,然后退出循环。 第一次迭代是 b=0