2016-11-29 95 views
0

基於字典的數據結構的最佳(時間和空間效率)是什麼?我有一大串相同大小的字符串(10億)(32到64),我想將它們存儲在字典中,以便我可以進行集合成員測試。高效的基於字典的數據結構

+0

也很少有一個數據結構,最好是通過時間和空間效率指標。弄清楚預期的使用模式將是一個好主意 - 例如,你是否只插入一次密鑰然後多次查看它們,或者你經常添加和刪除密鑰,或者只插入一次,然後只查看他們一次,或... – twalberg

+0

字符串限制在他們包含的字符? (十六進制?只有大寫?) – 1201ProgramAlarm

回答

0

使用std::map,其中key值通常用於排序和唯一標識元素,而映射的值存儲與此密鑰關聯的內容。

如果您不需要按照鍵排序地圖,請使用std::unordered_map,這比地圖容器通過鍵訪問各個元素要快。

你可以閱讀更多的map V/S unordered_mapthis question.