我是 C++ 的初学者。我需要存储在查找和添加新条目方面表现出色的地址列表。
我首先要查看该地址是否已存在于列表中,如果是,则不写入,否则向该列表添加新条目。
并且在某些操作的时候,查看地址是否存在于列表中。
C++中有没有内存和空间方面的快速访问和动态增长的数据结构。
最佳答案
我建议使用 std::map
(通常实现为一些 red-black tree )具有对数复杂度,因此在实践中应该足够了。
如果你有一个符合 C++11 标准的实现,你可以考虑 std::unordered_map
(通常实现为一些 hash-table )。
如果您不需要键的任何关联数据,而只是处理它们的集合,请考虑 std::set
或 std::unordered_set
许多库(Boost、Qt 等)也实现了关联容器。
关于c++ - 用于存储地址的一列列表的数据结构,在 C++ 中更好地查找 O(1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9759638/