首页 > 解决方案 > 哪个是查找和插入的最佳容器?

问题描述

我需要在容器中插入许多项目。如果一个项目已经在容器中,不要插入。我需要做多次。这些项目不需要排序。
我很困惑是使用 set(binary tree) 还是 unordered_set(hash table)。既然我的物品是独一无二的,那么哈希表的效率会降低吗?

标签: c++data-structuresstlcontainers

解决方案


既然你说

  • 您不需要订购的物品
  • 你不想重复

最合乎逻辑的容器是一个集合。

没有必要使用std::set,因为它试图保持秩序(你说你不需要)。

std::unordered_set是一个不错的选择,因为它可以快速插入并检查项目是否在集合中。


推荐阅读