2016-11-29 82 views
0

基于字典的数据结构的最佳(时间和空间效率)是什么?我有一大串相同大小的字符串(10亿)(32到64),我想将它们存储在字典中,以便我可以进行集合成员测试。高效的基于字典的数据结构

+0

也很少有一个数据结构,最好是通过时间和空间效率指标。弄清楚预期的使用模式将是一个好主意 - 例如,你是否只插入一次密钥然后多次查看它们,或者你经常添加和删除密钥,或者只插入一次,然后只查看他们一次,或... – twalberg

+0

字符串限制在他们包含的字符? (十六进制?只有大写?) – 1201ProgramAlarm

回答

0

使用std::map,其中key值通常用于排序和唯一标识元素,而映射的值存储与此密钥关联的内容。

如果您不需要按照键排序地图,请使用std::unordered_map,这比地图容器通过键访问各个元素要快。

你可以阅读更多的map V/S unordered_mapthis question.