bimap相关内容

我们有 MultiBiMap 吗?

我们现在有 BiMap 和 multiMap 的概念,但是有 multiBiMap 吗?所以我的意思是什么.在 multiMap 中,K 和 V 之间存在一对多关系,单个键可以关联到多个值,因此得名.在双地图中,您有 K,V 对,这是双向的,这意味着您也可以获得 V,K 关系.就像有两个常规地图但同步.我需要一个双向多图,您可以在其中结合这两个概念. 解决方案 import java.ut ..
发布时间:2022-01-08 14:20:25 Java开发

双向地图是否有更有效的实现?

我创建了一个简单的双向映射类,它通过内部存储两个具有相反键/值类型的std::map实例来工作,并提供一个用户友好的界面: template类 Bimap{std::map地图1;std::map地图2;//...}; 有没有更有效的方法来实现不需要两倍内存的双向映射? bimap 通常是如何实现的? 编辑: bimap 元素应该是可变的还是不可变的?(更改 map1 中的一 ..
发布时间:2021-12-22 08:11:57 C/C++开发

定义成员类后重新声明成员类是否合法?

我在编译boost.bimap库时遇到问题.我的测试程序是一个空白的main函数,并且只有一个include指令(如#include ). 经过一番调查,我发现预处理器从头文件进行了一些有趣的构造,例如: struct A { struct B{}; struct B; }; 我不知道这是否正确,但是gcc接受它,而clang和icc不接受.谁是正确的, ..
发布时间:2020-07-18 20:08:59 C/C++开发

升压bimap的find()问题

我有以下代码: wxString getColorName(const wxColour& color) { typedef ColorComboBox::ColorMap::right_const_iterator ConstColorIterator; ColorComboBox::ColorMap colorMap = ColorComboBox::getDefault ..
发布时间:2020-07-18 20:07:55 C/C++开发

在boost :: bimap中将值添加到多集

我想使用boost :: bimap的多图版本,并且我正在遵循此方法, Boost :: Bimap等同于双向多图 这显示了如何在结构中添加和检索值.我试图根据右侧的值进行查找,该值映射到左侧的多个值,如果找到,我想添加到左侧的列表中.例如,假设这是bimap, value_type(1, 1) value_type(10, 50) value_type(1, 2) value ..
发布时间:2020-07-18 20:07:50 其他开发

Boost :: Bimap等效于双向多图

问题的第一部分是我正在尝试使用boost :: bimap,但是从文档中我还不清楚如何定义双向多图. 问题的第二部分是我需要它是一个方向的地图,而另一个方向的多重地图,可以使用boost :: bimap吗? 任何人都有这方面的经验或可以将我指向正确的页面吗? 解决方案 所有内容都在文档中... typedef boost::bimap ..
发布时间:2020-07-18 20:07:47 C/C++开发

代表两个或多个因素之间正向或反向关系的最佳Guava(Google)集合API是什么?

BiMap确实具有逆方法,但是我不确定它是否适合用于此问题.有人可以建议替代方法或收集/方法吗?一个例子会有所帮助. 先谢谢了. 普拉卡什 解决方案 您能显示一个简单的代码示例来说明如何使用这种数据结构吗? 键/值应该唯一吗?在这种情况下,BiMap听起来是正确的. 如果键/值不是唯一的,则需要某种"BiMultimap"(也称为“图形"),如本如果需要图形,则可能需要查 ..
发布时间:2020-07-18 20:07:45 Java开发

可变参数typedef或"Bimap以C ++ 0x方式完成"

简短的问题:我可以键入一个可变参量包吗?我需要template struct Forward { typedef T... args; };. 长版: 我正在考虑重新实现出色的 boost bimap .回想一下,两个类型S和T的双图是S x和T y之间的关系的std::set.对象本身存储在两个独立的内部容器中,并且这些关系跟踪我假设的关联迭代器;两种 ..
发布时间:2020-07-18 20:07:42 其他开发

Boost Bimap在调试版本中占用过多内存

我正在使用很多形式的容器 boost::bimap, boost::bimaps::set_of > 我在很多cpp文件中包含的头文件中定义它们(这是在我尽可能限制头文件的显示之后).在调试版本中创建的.a文件运行到1 GB以上(由于“设备上无空间"错误,导致编译中途停止,因此编译时间自然呈指 ..
发布时间:2020-05-22 20:12:07 C/C++开发

我们有MultiBiMap吗?

正如我们现在,有BiMap和multiMap的概念,但有一个multiBiMap?那么我的意思是什么呢。 在multiMap中,你有K和V之间的一对多关系,一个关键字可以关联到多个值,因此也就是名字。 在bi图中,您有K,V双双向平均值,您也可以得到V,K关系。像有两个常规地图,但同步。我需要一个双向多图,将这两个概念结合起来。 解决方案 import java.util.Set; ..
发布时间:2018-06-04 13:20:43 Java开发

双向地图是否有效实施?

我创建了一个简单的双向地图类,通过内部存储两个具有相反键/值类型的 std :: map 实例,提供一个用户友好的界面: template Bimap类 { std :: map MAP1; std :: map MAP2; // ... }; 是否有更有效的实施双向地图的方法 ..
发布时间:2017-05-21 17:03:51 C/C++开发

在c ++ 11中有没有Boost.Bimap替代?

我想避免使用Boost,但完全拥抱C ++ 11。如果需要,在我的程序中,Boost的bimap的一个细微的版本将适用于我(我需要一个常量的bimap来在枚举和相应的字符串之间切换)。地图将编译时不变,所以也许甚至两个手动维护的地图不是最佳的解决方案。 谢谢! 更新:我在“代码项目”中发现这一点,但似乎许可可能是一个问题: http://www.codeproject.com/KB/s ..
发布时间:2017-05-21 16:41:58 C/C++开发

boost :: bimap枚举

我想为C ++中的枚举创建一个简单的双向查找工具。我有单向查找工作正常... 枚举MyEnum { 一, 二, 三 }; const boost :: unordered_map MyEnumMap = map_list_of (one,“One”) (Two,“Two”) (Three,“Three”); 然后通 ..
发布时间:2016-10-23 19:33:54 C/C++开发

在c ++ 11中有Boost.Bimap替代吗?

有没有可用的替代Boost的bimap在C ++ 0x? 我想避免Boost,但完全接受C ++ 11。如果有必要,Boost的bimap的一个瘦小的版本将在我的程序中为我工作(我需要一个常量bimap在枚举和相应的字符串之间切换)。映射将是编译时常量,因此,甚至两个手动维护的映射不是最佳解。 谢谢! 更新:我在代码项目中发现了,但是它似乎许可可能是一个问题: http://ww ..
发布时间:2016-10-14 21:36:33 C/C++开发