链表数组c++

Array of linked list c++

本文关键字:c++ 数组 链表      更新时间:2023-10-16

我创建了一个数组,其中每个索引包含一堆链表。这是实现哈希表所需要的。我如何使用它的一个例子是:

std::list<string> listArray[sizeOfTable];

这是正确的用法吗?我该如何显示这个哈希表的内容呢?

是的,你可以这样做。

要显示内容,您必须自己编写一些代码,可能像这样:

for (auto& bucket: listArray) {
   for (auto& item: bucket) {
      cout << "item: " << item << endl;
   }
}

当然,我假设您有很好的理由不想使用std::unordered_map(这是一个has表)。

您可以这样做,但我认为更好的选择是使用std::vector。vector是动态扩展的数组,你可以用这种方式来处理哈希表的大小调整。

至于第二个问题-要显示哈希表内容,您必须遍历数组,并且对于每个单元格,您必须遍历给定单元格中的列表(大多数单元格将为空,但这不是问题)。