多重关连数组
在计算机科学中,多重关连数组(英语:multimap),是一种抽象资料结构,它储存著(键,值)的有序对,和map不同之处在于,多重关连数组的有序对可以重复。通常,多重关连数组是利用在map中使用串列或集合当作值的栏位。
这种数据结构包含以下几种常见操作:
- 向关联数组添加配对
- 从关联数组内删除配对
- 修改关联数组内的配对
- 根据已知的键寻找配对
使用模式
- 当需要对一同一个键值储存大量资料时,可以使用多重关连数组。
- 举例来说,在学生选课系统中,一个学生可以选择多门课程,可以使用多重关连数组,将有序对(学生ID, 课程ID)存入多重关连数组中。
语言支持
C++
C++的标准模板库提供利用平衡树来实作多重关连数组,[1] ,且SGI的标准模板库提供了利用杂凑表hash_multimap
[2]