我想要用boost::bimap
替换一个将字符串映射为前者索引的vector<string>
和一个将字符串映射为索引大小的boost::unordered_map<string, size_t>
。
我应该使用哪种bimap
实例化?目前,我想到了以下这种:
typedef bimap<
unordered_set_of<size_t>,
vector_of<string>
> StringMap;
但我不确定我是否已经颠倒了集合类型。此外,我想知道是否应该更改关系集合类型。是选择vector_of_relation
最好,还是选择set_of_relation
,或者仅使用默认设置?
size_t
和string
对象之间的双射,同时具有 O(1) 的访问时间,并且需要最小或适度的内存需求。 - Fred Foo