我想知道在哪些情况下使用多图而不是套图。
假设我有一堆由< [0-9],[0-9] +>组成的元组。所以,他们左边有0-9,右边有0 - 无限。
我现在可以制作地图并将元组的左侧作为键。该值将是具有相同左侧的所有元组的右侧的一组。这样我就可以在左边有log(10)查找时间,如果是右边的无序设置“hash-time”查找时间。 我不知道多图在内部是如何工作的...所以,假设他们把所有右边放在一个向量中,然后对它进行二进制搜索,这将更糟糕的是hash-tiem查找(提供了一个很好的函数)。但我不知道它们是如何工作的。那么,在这种情况下,更好的选择是什么?什么花费更少的时间,什么使用更少的内存?
我知道这已经在这里被问过:multimap vs map with set
但我的问题更具体,因为元组的左侧方差非常有限,而且该线程中的答案包含了很多关于多图的实现的猜测。
因此,我可以使用数字示例< 2,928947>。具体来说,我需要这个用于字符串,为解析器存储语法,需要通过左侧查找规则。