它是哈希的构造函数,但我不明白最后一个参数。它在做什么?
std::fill(hash_table_, hash_table_ + HASH_TABLE_SIZE, (node *)NULL)
你能以某种方式在for循环中执行此操作吗?
for (int i = 0; i < HASH_TABLE_SIZE; i++){
//whatever that last argument is doing
hash_table_++;
}
试图理解填充如何与哈希一起工作。谢谢!
答案 0 :(得分:1)
该行用NULL填充哈希表。
是的,你也可以使用一个循环,但它更多的工作,更容易出错。
答案 1 :(得分:0)
它将整个哈希表设置为最后一个参数(NULL),其循环为:
for (int i = 0; i < HASH_TABLE_SIZE; i++)
{
*(hash_table_ + i) = (node *)NULL;
}
答案 2 :(得分:0)
我不明白最后一个论点。它在做什么?
std :: fill(hash_table_,hash_table_ + HASH_TABLE_SIZE,(node *)NULL)
是否填充了一个哈希表,其NULL
指针指向node
。
你能以某种方式在for循环中执行此操作吗?
for (int i = 0; i < HASH_TABLE_SIZE; i++){
hash_table_[i] = (node*)NULL;
}